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 bearbeiteanmerkung import BearbeiteAnmerkung
42 from bearbeitesicherheitsanf import BearbeiteSicherheitsanf
43
44 from bearbeiteuebersetzung import BearbeiteUebersetzung
45
46 from universal import zk
47
48 from wxuniversal import FlexGridSizerWxObjTitel
49 from wxuniversal import ComboBoxErg
50 from wxuniversal import farbeBearbeiten
51 from wxuniversal import ListBoxErg
52 from wxuniversal import ListBoxSpWTitelAL
53 from wxuniversal import TextCtrlAuswStatisch
54 from wxuniversal import SiAnf
55 from wxuniversal import TextCtrlErg
56 from wxuniversal import TreeCtrlErg
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
90
91 """
92 Klasse zur Abbildung des Eingabeformulars 'Risikoanalyse'
93
94 @keyword parent: Es ist der Datenbankbenutzername zu übergeben.
95 @type parent: Zeichenkette
96 @keyword id: Es ist das Kennwort des Datenbankbenutzers zu übergeben.
97 @type id: Zeichenkette
98 @keyword size: Es ist die IP-Adresse anzugeben, über die der PostgreSQL-Datenbankserver ansprechbar ist.
99 @type size: Zeichenkette
100
101 @raise Fehler: ?? Fehlermeldung und Programmende, wenn die Datenbankverbindung nicht hergestellt werden kann. ??
102 """
103
104
105
106
107
108
109 - def __init__( self, parent, Statusleiste, dbVerbindung, id = -1, size = wx.DefaultSize ):
110 wx.ScrolledWindow.__init__( self, parent, id, (0, 0), size=size )
111
112
113
114
115 self.SetName( name = "Risikoanalyse" )
116
117
118
119
120
121 self.SetScrollRate( 20, 20 )
122 self.EnableScrolling( True, True )
123
124
125
126
127
128 self.Statusleiste = Statusleiste
129
130
131
132
133
134
135 self.dbVerbindung = dbVerbindung
136
137 self.txtUebersetzung = u"Doppelklick:\nÜbersetzungen anzeigen/bearbeiten"
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153 self.ListBoxAL__GefNetz = ListBoxSpWTitelAL( parent = self
154 , titel = u"Enthalten im Gefahrennetz:"
155 , minSize = ( -1, 150 )
156 , orient = wx.VERTICAL
157 , Statusleiste = self.Statusleiste )
158
159
160 self.ListBoxAL__GefNetz.ListBoxLiDarfLeerSein = False
161
162 self.ListBoxAL__GefNetz.SplitterWindow.SetSashPosition( 250 )
163
164 self.ListBoxAL__GefNetz.ListBox__li.nimmWerteStatusleiste(
165 DBSpNameErlaeuterung = u"Welcher Gefahr ist das Gefahrenszenario zugeordnet ?"
166 , DBSpName = "ps.gefstrkt.str_strkt_id" )
167
168 self.ListBoxAL__GefNetz.ListBox__re.nimmWerteStatusleiste(
169 DBSpNameErlaeuterung = u"Welcher Gefahr ist das Gefahrenszenario zugeordnet ?"
170 , DBSpName = "ps.gefstrkt.str_strkt_id" )
171
172
173
174
175
176
177
178 self.ListBoxAL__GefPersonen = ListBoxSpWTitelAL( parent = self
179 , titel = u"Gefährdete Personen:"
180 , minSize = ( -1, -1 )
181 , orient = wx.VERTICAL
182 , Statusleiste = self.Statusleiste )
183
184 self.ListBoxAL__GefPersonen.SplitterWindow.SetSashPosition( 200 )
185
186 self.ListBoxAL__GefPersonen.ListBox__li.nimmWerteStatusleiste(
187 DBSpNameErlaeuterung = u"Welche Personen sind vom Gefahrenszenario unmittelbar betroffen ?"
188 , DBSpName = "..." )
189
190 self.ListBoxAL__GefPersonen.ListBox__li.nimmWerteStatusleiste(
191 DBSpNameErlaeuterung = u"Welche Personen sind vom Gefahrenszenario unmittelbar betroffen ?"
192 , DBSpName = "..." )
193
194
195
196
197
198
199
200
201 self.ListBox__GefSzen = FlexGridSizerWxObjTitel( parent = self
202 , wxObj = ListBoxErg( self
203 , size = ( -1, 100 )
204 , style = wx.BORDER_SUNKEN | wx.LB_SORT
205 , Statusleiste = self.Statusleiste )
206 , titel = u"Gefahrenszenario / Interne Notizen zum Gefahrenszenario:"
207 , orient = wx.VERTICAL )
208
209 self.ListBox__GefSzen.wxObjekt.SetBackgroundColour( farbeBearbeiten )
210
211 self.ListBox__GefSzen.wxObjekt.nimmWerteStatusleiste(
212 DBSpNameErlaeuterung = u"Allgemeine Beschreibung des Gefahrenszenarios."
213 , DBSpName = "prj.pp_psgefszenario.spr_uebvar_id/notizen" )
214
215 self.ListBox__GefSzen.wxObjekt.SetToolTip( wx.ToolTip( self.txtUebersetzung ) )
216
217 self.Bind( wx.EVT_LISTBOX_DCLICK
218 , self.__ereignisUebersezung__
219 , self.ListBox__GefSzen.wxObjekt )
220
221
222
223
224
225
226
227 self.ListBox__GefAnm = FlexGridSizerWxObjTitel( parent = self
228 , wxObj = ListBoxErg( self
229 , size = ( -1, 150 )
230 , style = wx.BORDER_SUNKEN | wx.LB_SORT
231 , Statusleiste = self.Statusleiste )
232 , titel = u"Anmerkungen zum Gefahrenszenario / Interne Notizen zu den Anmerkungen:"
233 , orient = wx.VERTICAL )
234
235 self.ListBox__GefAnm.wxObjekt.SetBackgroundColour( farbeBearbeiten )
236
237 self.ListBox__GefAnm.wxObjekt.nimmWerteStatusleiste(
238 DBSpNameErlaeuterung = u"Anmerkungen / Randbedingungen zum Gefahrenszenario."
239 , DBSpName = "prj.pl_psgefanm.spr_uebvar_id/notizen" )
240
241 self.ListBox__GefAnm.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nAnmerkungen bearbeiten" ) )
242
243 self.Bind( wx.EVT_LISTBOX_DCLICK
244 , self.__ereignisAnmerkungen__
245 , self.ListBox__GefAnm.wxObjekt )
246
247
248
249
250
251
252 self.SiAnf__SiAnf = SiAnf( parent = self
253 , Statusleiste = self.Statusleiste
254 , dbVerbindung = self.dbVerbindung
255 , dlgBearbeiteSicherheitsanf = BearbeiteSicherheitsanf(
256 parent = self
257 , Statusleiste = self.Statusleiste
258 , dbVerbindung = self.dbVerbindung ) )
259
260
261
262
263
264
265
266 self.ListBox__ReprGefSzen = FlexGridSizerWxObjTitel( parent = self
267 , wxObj = ListBoxErg( self
268 , size = ( -1, 100 )
269 , style = wx.BORDER_SUNKEN | wx.LB_SORT
270 , Statusleiste = self.Statusleiste )
271 , titel = u"Repräsentatives Gefahrenszenario:"
272 , orient = wx.VERTICAL )
273
274 self.ListBox__ReprGefSzen.wxObjekt.SetBackgroundColour( farbeBearbeiten )
275
276 self.ListBox__ReprGefSzen.wxObjekt.nimmWerteStatusleiste(
277 DBSpNameErlaeuterung = u"Beschreibung des mit dem größten Risiko verbundenen Gefahrenszenarios (wenn mehrere möglich sind)."
278 , DBSpName = "prj.pp_psgefszenario.spr_uebvar_id_reprgefszen" )
279
280 self.ListBox__ReprGefSzen.wxObjekt.SetToolTip( wx.ToolTip( self.txtUebersetzung ) )
281
282 self.Bind( wx.EVT_LISTBOX_DCLICK
283 , self.__ereignisUebersezung__
284 , self.ListBox__ReprGefSzen.wxObjekt )
285
286
287
288
289
290
291
292 self.ComboBox__Haeufig = FlexGridSizerWxObjTitel( parent = self
293 , wxObj = ComboBoxErg( self
294 , choices = []
295 , style = wx.CB_DROPDOWN|wx.CB_READONLY
296 , Statusleiste = self.Statusleiste )
297 , orient = wx.VERTICAL
298 , titel = u"Häufigkeit:" )
299
300 self.ComboBox__Haeufig.wxObjekt.nimmWerteStatusleiste(
301 DBSpNameErlaeuterung = "Häufigkeit des repräsentativen Gefahrenszenarios."
302 , DBSpName = "..." )
303
304 self.Bind( wx.EVT_COMBOBOX
305 , self.__ereignisRisikobewertung__
306 , self.ComboBox__Haeufig.wxObjekt )
307
308
309
310 self.ListBox__HaeufigBegr = FlexGridSizerWxObjTitel( parent = self
311 , wxObj = ListBoxErg( self
312 , size = ( -1, 100 )
313 , style = wx.BORDER_SUNKEN | wx.LB_SORT
314 , Statusleiste = self.Statusleiste )
315 , titel = u"Begründung der Häufigkeit / Interne Notizen zur Häufigkeit:"
316 , orient = wx.VERTICAL )
317
318 self.ListBox__HaeufigBegr.wxObjekt.SetBackgroundColour( farbeBearbeiten )
319
320 self.ListBox__HaeufigBegr.wxObjekt.nimmWerteStatusleiste(
321 DBSpNameErlaeuterung = u"Warum tritt das repräsentative Gefahrenszenario mit der genannten Häufigkeit auf ?"
322 , DBSpName = "..." )
323
324 self.ListBox__HaeufigBegr.wxObjekt.SetToolTip( wx.ToolTip( self.txtUebersetzung ) )
325
326 self.Bind( wx.EVT_LISTBOX_DCLICK
327 , self.__ereignisUebersezung__
328 , self.ListBox__HaeufigBegr.wxObjekt )
329
330
331
332
333
334
335
336 self.ComboBox__GefStufe = FlexGridSizerWxObjTitel( parent = self
337 , wxObj = ComboBoxErg( self
338 , choices = []
339 , style = wx.CB_DROPDOWN|wx.CB_READONLY
340 , Statusleiste = self.Statusleiste )
341 , orient = wx.VERTICAL
342 , titel = u"Gefahrenstufe:" )
343
344 self.ComboBox__GefStufe.wxObjekt.nimmWerteStatusleiste(
345 DBSpNameErlaeuterung = u"Auswirkung des repräsentativen Gefahrenszenarios."
346 , DBSpName = "..." )
347
348 self.ComboBox__GefStufe.wxObjekt.Bind( wx.EVT_COMBOBOX, self.__ereignisRisikobewertung__ )
349
350
351
352 self.ListBox__GefStufeBegr = FlexGridSizerWxObjTitel( parent = self
353 , wxObj = ListBoxErg( self
354 , size = ( -1, 100 )
355 , style = wx.BORDER_SUNKEN | wx.LB_SORT
356 , Statusleiste = self.Statusleiste )
357 , titel = u"Begründung der Gefahrenstufe / Interne Notizen zur Gefahrenstufe:"
358 , orient = wx.VERTICAL )
359
360 self.ListBox__GefStufeBegr.wxObjekt.SetBackgroundColour( farbeBearbeiten )
361
362 self.ListBox__GefStufeBegr.wxObjekt.nimmWerteStatusleiste(
363 DBSpNameErlaeuterung = u"Warum tritt das repräsentative Gefahrenszenario mit der genannten Häufigkeit auf ?"
364 , DBSpName = "..." )
365
366 self.ListBox__GefStufeBegr.wxObjekt.SetToolTip( wx.ToolTip( self.txtUebersetzung ) )
367
368 self.Bind( wx.EVT_LISTBOX_DCLICK
369 , self.__ereignisUebersezung__
370 , self.ListBox__GefStufeBegr.wxObjekt )
371
372
373
374
375
376
377 self.TCASRisikostufe = FlexGridSizerWxObjTitel( parent = self
378 , wxObj = TextCtrlAuswStatisch(
379 parent = self
380 , size = ( -1, -1 )
381 , Statusleiste = self.Statusleiste )
382 , orient = wx.VERTICAL
383 , titel = u"Risikostufe:" )
384
385 self.TCASRisikostufe.wxObjekt.nimmWerteStatusleiste(
386 DBSpNameErlaeuterung = u"Das resultierende Risiko des repräsentativen Gefahrenszenarios."
387 , DBSpName = "prj.pl_psgefabk.ps_abk_id" )
388
389
390
391 self.ListBox__RisikoStufeBegr = FlexGridSizerWxObjTitel( parent = self
392 , wxObj = ListBoxErg( self
393 , size = ( -1, 100 )
394 , style = wx.BORDER_SUNKEN | wx.LB_SORT
395 , Statusleiste = self.Statusleiste )
396 , titel = u"Bewertung der Risikostufe / Interne Notizen zur Risikostufe:"
397 , orient = wx.VERTICAL )
398
399 self.ListBox__RisikoStufeBegr.wxObjekt.SetBackgroundColour( farbeBearbeiten )
400
401 self.ListBox__RisikoStufeBegr.wxObjekt.nimmWerteStatusleiste(
402 DBSpNameErlaeuterung = u"Warum tritt das repräsentative Gefahrenszenario mit der genannten Häufigkeit auf ?"
403 , DBSpName = "prj.pl_psgefabk.spr_uebvar_id_zus/notizen" )
404
405 self.ListBox__RisikoStufeBegr.wxObjekt.SetToolTip( wx.ToolTip( self.txtUebersetzung ) )
406
407 self.Bind( wx.EVT_LISTBOX_DCLICK
408 , self.__ereignisUebersezung__
409 , self.ListBox__RisikoStufeBegr.wxObjekt )
410
411
412
413
414
415
416
417
418
419
420
421
422
423 GridSizer = wx.GridSizer( rows = 1, cols = 2, vgap = 0, hgap = 10 )
424
425 GridSizer.Add( self.ListBoxAL__GefNetz
426 , flag = wx.EXPAND )
427
428 GridSizer.Add( self.ListBoxAL__GefPersonen
429 , flag = wx.EXPAND )
430
431
432 GridBagSizer = wx.GridBagSizer( vgap = 10, hgap = 10 )
433 GridBagSizer.AddGrowableCol( idx = 1, proportion = 1 )
434 GridBagSizer.AddGrowableRow( idx = 1, proportion = 1 )
435 GridBagSizer.AddGrowableRow( idx = 3, proportion = 1 )
436 GridBagSizer.AddGrowableRow( idx = 5, proportion = 1 )
437
438 GridBagSizer.Add( self.ComboBox__Haeufig
439 , pos = wx.GBPosition( row = 0, col = 0 )
440 , flag = wx.EXPAND )
441
442 GridBagSizer.Add( self.ListBox__HaeufigBegr
443 , pos = wx.GBPosition( row = 0, col = 1 )
444 , span = wx.GBSpan( rowspan = 2, colspan = 1 )
445 , flag = wx.EXPAND )
446
447
448 GridBagSizer.Add( wx.StaticText( self )
449 , pos = wx.GBPosition( row = 1, col = 0 )
450 , flag = wx.EXPAND )
451
452
453 GridBagSizer.Add( self.ComboBox__GefStufe
454 , pos = wx.GBPosition( row = 2, col = 0 )
455 , flag = wx.EXPAND )
456
457 GridBagSizer.Add( self.ListBox__GefStufeBegr
458 , pos = wx.GBPosition( row = 2, col = 1 )
459 , span = wx.GBSpan( rowspan = 2, colspan = 1 )
460 , flag = wx.EXPAND )
461
462
463 GridBagSizer.Add( wx.StaticText( self )
464 , pos = wx.GBPosition( row = 3, col = 0 )
465 , flag = wx.EXPAND )
466
467
468 GridBagSizer.Add( self.TCASRisikostufe
469 , pos = wx.GBPosition( row = 4, col = 0 )
470 , flag = wx.EXPAND )
471
472 GridBagSizer.Add( self.ListBox__RisikoStufeBegr
473 , pos = wx.GBPosition( row = 4, col = 1 )
474 , span = wx.GBSpan( rowspan = 2, colspan = 1 )
475 , flag = wx.EXPAND )
476
477
478 GridBagSizer.Add( wx.StaticText( self )
479 , pos = wx.GBPosition( row = 5, col = 0 )
480 , flag = wx.EXPAND )
481
482
483
484
485
486 FlexGridSizer = wx.FlexGridSizer( rows = 6, cols = 1, vgap = 10, hgap = 0 )
487
488 FlexGridSizer.AddGrowableCol( idx = 0, proportion = 1 )
489 FlexGridSizer.AddGrowableRow( idx = 0, proportion = 0 )
490 FlexGridSizer.AddGrowableRow( idx = 1, proportion = 0 )
491 FlexGridSizer.AddGrowableRow( idx = 2, proportion = 0 )
492 FlexGridSizer.AddGrowableRow( idx = 3, proportion = 0 )
493 FlexGridSizer.AddGrowableRow( idx = 4, proportion = 0 )
494 FlexGridSizer.AddGrowableRow( idx = 5, proportion = 0 )
495
496
497 FlexGridSizer.Add( GridSizer
498 , flag = wx.LEFT|wx.TOP|wx.RIGHT|wx.EXPAND
499 , border = 10 )
500
501 FlexGridSizer.Add( self.ListBox__GefSzen
502 , flag = wx.LEFT|wx.RIGHT|wx.EXPAND
503 , border = 10 )
504
505 FlexGridSizer.Add( self.ListBox__GefAnm
506 , flag = wx.LEFT|wx.RIGHT|wx.EXPAND
507 , border = 10 )
508
509 FlexGridSizer.Add( self.SiAnf__SiAnf
510 , flag = wx.LEFT|wx.RIGHT|wx.EXPAND
511 , border = 10 )
512
513 FlexGridSizer.Add( self.ListBox__ReprGefSzen
514 , flag = wx.LEFT|wx.RIGHT|wx.EXPAND
515 , border = 10 )
516
517 FlexGridSizer.Add( GridBagSizer
518 , flag = wx.LEFT|wx.BOTTOM|wx.RIGHT|wx.EXPAND
519 , border = 10 )
520
521
522 self.SetSizerAndFit( FlexGridSizer )
523
524
525
526
527
528
529 self.init_Risikoanalyse()
530 self.liesDB()
531
532
533
534
535
536
537
538
539
540
542 """
543 Anmerkungen zum Gefahrenszenario bearbeiten.
544
545 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet.
546 @type ereignis: C{wx - Ereignisobjekt}
547 """
548
549
550
551
552 dlg = BearbeiteAnmerkung( parent = self
553 , Statusleiste = self.Statusleiste
554 , dbVerbindung = self.dbVerbindung )
555 dlg.ShowModal()
556 dlg.Destroy()
557
558
559
560
561
562 self.dbVerbindung.selektiere__GefszenId_AnmId__Projekt__Sprache(
563 TreeCtrlErg_ListBoxErg = self.ListBox__GefAnm.wxObjekt )
564
565
566
567
568
569
570
571
573 """
574 Ein C{wx - Objekt} der Risikobewertung wurde verändert.
575
576 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet.
577 @type ereignis: C{wx - Ereignisobjekt}
578 """
579
580
581
582
583 self.ListBox__RisikoStufeBegr.wxObjekt.loescheAlles()
584 if( ereignis.GetId() == self.ComboBox__Haeufig.wxObjekt.GetId() ) :
585
586 self.ListBox__HaeufigBegr.wxObjekt.loescheAlles()
587
588 else :
589
590 self.ListBox__GefStufeBegr.wxObjekt.loescheAlles()
591
592
593
594
595
596
597 hfgGef = ( str( self.ComboBox__Haeufig.wxObjekt.gibClientData() )
598 + '-'
599 + str( self.ComboBox__GefStufe.wxObjekt.gibClientData() ) )
600
601 if( hfgGef not in self.dbVerbindung.daten__psAbk_Risikomatrix ) :
602
603
604
605
606
607 ereignis.Skip( skip = True )
608 return
609
610 self.TCASRisikostufe.wxObjekt.selektiereWert(
611 clientDataId = self.dbVerbindung.daten__psAbk_Risikomatrix[hfgGef][0][0] )
612
613
614
615
616
617
618
619 ereignis.Skip( skip = True )
620
621
622
623
624
625
626
627
628
630 """
631 Übersetzung anzeigen / bearbeiten
632
633 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet.
634 @type ereignis: C{wx - Ereignisobjekt}
635 """
636
637
638
639
640
641
642 self.ListBox__GefSzen.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
643 self.ListBox__ReprGefSzen.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
644 self.ListBox__HaeufigBegr.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
645 self.ListBox__GefStufeBegr.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
646 self.ListBox__RisikoStufeBegr.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
647
648
649
650
651
652
653 self.schreibDB()
654
655
656
657
658
659
660
661
662
663
664
665 notizen = None
666 if( ereignis.GetId() == self.ListBox__GefSzen.wxObjekt.GetId()
667 or ereignis.GetId() == self.ListBox__HaeufigBegr.wxObjekt.GetId()
668 or ereignis.GetId() == self.ListBox__GefStufeBegr.wxObjekt.GetId()
669 or ereignis.GetId() == self.ListBox__RisikoStufeBegr.wxObjekt.GetId() ) :
670
671 notizen = ereignis.GetEventObject().gibClientData( lfdNr = 0 )[1]
672
673
674
675
676
677 dlg = BearbeiteUebersetzung( parent = self
678 , Statusleiste = self.Statusleiste
679 , dbVerbindung = self.dbVerbindung
680 , sprUebvarId = ereignis.GetEventObject().gibClientData( lfdNr = 0 )[0]
681 , notizen = notizen )
682
683
684
685
686
687 dlg.ShowModal()
688 dlg.Destroy()
689
690
691
692
693
694
695 if( dlg.gibWerte()[0] ) :
696
697
698
699
700 istAenderungId = dlg.gibWerte()[1] != ereignis.GetEventObject().gibClientData( lfdNr = 0 )[0]
701 istAenderungIdNotizen = ( istAenderungId
702 or dlg.gibWerte()[2] != ereignis.GetEventObject().gibClientData( lfdNr = 0 )[1] )
703
704
705
706
707
708
709
710
711 listeGefSzen = self.ListBox__GefSzen.wxObjekt.gibClientData( lfdNr = 0 )
712 spr_uebvar_id_reprgefszen = self.ListBox__ReprGefSzen.wxObjekt.gibClientData( lfdNr = 0 )[0]
713
714
715
716
717 if( ereignis.GetId() == self.ListBox__GefSzen.wxObjekt.GetId() and istAenderungIdNotizen ) :
718
719
720
721
722 listeGefSzen = [ dlg.gibWerte()[1]
723 , dlg.gibWerte()[2]
724 , self.ListBox__GefSzen.wxObjekt.gibClientData( lfdNr = 0 )[2]
725 , self.ListBox__GefSzen.wxObjekt.gibClientData( lfdNr = 0 )[3] ]
726
727
728
729
730 if( ereignis.GetId() == self.ListBox__ReprGefSzen.wxObjekt.GetId() and istAenderungId ) :
731
732 spr_uebvar_id_reprgefszen = dlg.gibWerte()[1]
733
734
735
736
737 listeWerte = []
738 if( ereignis.GetId() == self.ListBox__HaeufigBegr.wxObjekt.GetId() and istAenderungIdNotizen ) :
739
740
741
742
743 listeWerte.append( self.ComboBox__Haeufig.wxObjekt.gibClientData() )
744
745
746
747
748 if( ereignis.GetId() == self.ListBox__GefStufeBegr.wxObjekt.GetId() and istAenderungIdNotizen ) :
749
750
751
752
753 listeWerte.append( self.ComboBox__GefStufe.wxObjekt.gibClientData() )
754
755
756
757
758 if( ereignis.GetId() == self.ListBox__RisikoStufeBegr.wxObjekt.GetId() and istAenderungIdNotizen ) :
759
760
761
762
763 listeWerte.append( self.TCASRisikostufe.wxObjekt.gibClientData()[0] )
764
765
766
767
768 listeWerte.append( dlg.gibWerte()[1] )
769 listeWerte.append( dlg.gibWerte()[2] )
770
771
772
773
774
775
776
777 if( ereignis.GetId() == self.ListBox__GefSzen.wxObjekt.GetId()
778 or ereignis.GetId() == self.ListBox__ReprGefSzen.wxObjekt.GetId() ) :
779
780
781
782
783
784
785 self.dbVerbindung.schreibe__PrjPpPsGefszenario(
786 listeGefszen = listeGefSzen
787 , spr_uebvar_id_reprgefszen = spr_uebvar_id_reprgefszen )
788
789 self.dbVerbindung.selektiere__GefszenId_Wortgruppen__Projekt__Sprache(
790 ListBoxErg_Gefszenario = self.ListBox__GefSzen.wxObjekt
791 , ListBoxErg_ReprGefszenario = self.ListBox__ReprGefSzen.wxObjekt )
792
793
794 else :
795
796
797
798
799
800
801 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte )
802
803 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
804 ComboBoxErg_ListBoxSpWTitelAL = self.ListBoxAL__GefPersonen
805 , ListBoxErg = None
806 , psAbkTyp = 'GP' )
807
808 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
809 ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__Haeufig.wxObjekt
810 , ListBoxErg = self.ListBox__HaeufigBegr.wxObjekt
811 , psAbkTyp = 'RH' )
812
813 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
814 ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__GefStufe.wxObjekt
815 , ListBoxErg = self.ListBox__GefStufeBegr.wxObjekt
816 , psAbkTyp = 'RG' )
817
818 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
819 ComboBoxErg_ListBoxSpWTitelAL = self.TCASRisikostufe.wxObjekt
820 , ListBoxErg = self.ListBox__RisikoStufeBegr.wxObjekt
821 , psAbkTyp = 'RR' )
822
823
824
825
826
827
828
829
831 """
832 Methode die aufgerufen wird, wenn Projekt oder Sprache geändert wurden.
833 """
834
835
836
837
838 self.dbVerbindung.init__WxControlWithItemsPerm( permDaten = self.dbVerbindung.daten__strStrkt__Projekt__Sprache
839 , wxObjekt = self.ListBoxAL__GefNetz.ListBox__re
840 , filter = self.dbVerbindung.konstante__str_name_id__gefahrennetz )
841
842
843
844
845 self.dbVerbindung.init__psAbk__Projekt__Sprache( ComboBoxErg_ListBoxSpWTitelAL = self.ListBoxAL__GefPersonen
846 , psAbkTyp = "GP" )
847 self.dbVerbindung.init__psAbk__Projekt__Sprache( ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__Haeufig.wxObjekt
848 , psAbkTyp = "RH" )
849 self.dbVerbindung.init__psAbk__Projekt__Sprache( ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__GefStufe.wxObjekt
850 , psAbkTyp = "RG" )
851 self.dbVerbindung.init__psAbk__Projekt__Sprache( ComboBoxErg_ListBoxSpWTitelAL = self.TCASRisikostufe.wxObjekt
852 , psAbkTyp = "RR" )
853
854
855
856
857
858
859
860
861
862
863
865 """
866 Methode die aufgerufen wird, wenn die Datenbankwerte im Fenster dargestellt werden sollen.
867 """
868
869
870
871
872 self.SiAnf__SiAnf.liesDB()
873
874
875
876
877
878
879
880
881
882 if( self.dbVerbindung.gib__PsGefszenarioId() is None ) :
883
884 self.ListBoxAL__GefNetz.schiebeAlleRechts()
885 self.ListBoxAL__GefPersonen.schiebeAlleRechts()
886 self.ListBox__GefSzen.wxObjekt.loescheAlles()
887 self.ListBox__GefAnm.wxObjekt.loescheAlles()
888 self.ListBox__ReprGefSzen.wxObjekt.loescheAlles()
889 self.ComboBox__Haeufig.wxObjekt.SetSelection( 0 )
890 self.ListBox__HaeufigBegr.wxObjekt.loescheAlles()
891 self.ComboBox__GefStufe.wxObjekt.SetSelection( 0 )
892 self.ListBox__GefStufeBegr.wxObjekt.loescheAlles()
893 self.TCASRisikostufe.wxObjekt.selektiereWert( clientDataId = 0 )
894 self.ListBox__RisikoStufeBegr.wxObjekt.loescheAlles()
895
896 return
897
898
899
900
901
902
903
904
905
906
907
908 self.dbVerbindung.selektiere__GefszenId_Wortgruppen__Projekt__Sprache(
909 ListBoxErg_Gefszenario = self.ListBox__GefSzen.wxObjekt
910 , ListBoxErg_ReprGefszenario = self.ListBox__ReprGefSzen.wxObjekt )
911
912
913
914
915
916
917
918
919
920 self.ListBoxAL__GefNetz.schiebeAlleRechts()
921
922 if( self.dbVerbindung.ps_gefszenario_id in self.dbVerbindung.daten__GefszenId_StruktId__Projekt ) :
923
924 for i in range( len( self.dbVerbindung.daten__GefszenId_StruktId__Projekt[self.dbVerbindung.ps_gefszenario_id] ) ):
925
926 self.ListBoxAL__GefNetz.schiebeLinks( self.dbVerbindung.daten__GefszenId_StruktId__Projekt[self.dbVerbindung.ps_gefszenario_id][i][0] )
927
928
929
930
931
932
933
934
935 self.dbVerbindung.selektiere__GefszenId_AnmId__Projekt__Sprache(
936 TreeCtrlErg_ListBoxErg = self.ListBox__GefAnm.wxObjekt )
937
938
939
940
941
942
943
944
945 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
946 ComboBoxErg_ListBoxSpWTitelAL = self.ListBoxAL__GefPersonen
947 , ListBoxErg = None
948 , psAbkTyp = 'GP' )
949
950 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
951 ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__Haeufig.wxObjekt
952 , ListBoxErg = self.ListBox__HaeufigBegr.wxObjekt
953 , psAbkTyp = 'RH' )
954
955 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
956 ComboBoxErg_ListBoxSpWTitelAL = self.ComboBox__GefStufe.wxObjekt
957 , ListBoxErg = self.ListBox__GefStufeBegr.wxObjekt
958 , psAbkTyp = 'RG' )
959
960 self.dbVerbindung.selektiere__GefszenId_AbkId__Projekt__Sprache(
961 ComboBoxErg_ListBoxSpWTitelAL = self.TCASRisikostufe.wxObjekt
962 , ListBoxErg = self.ListBox__RisikoStufeBegr.wxObjekt
963 , psAbkTyp = 'RR' )
964
965
966
967
968
969
970
971
972
973
974
975
977 """
978 Methode die aufgerufen wird, wenn die Eingabefelder ausgelesen und deren Werte in die Datenbank geschrieben werden sollen.
979 """
980
981
982
983
984 if( self.ListBox__GefSzen.wxObjekt.gibIstVomBenutzerGeaendert()
985 or self.ListBox__ReprGefSzen.wxObjekt.gibIstVomBenutzerGeaendert() ) :
986
987 self.dbVerbindung.schreibe__PrjPpPsGefszenario(
988 listeGefszen = self.ListBox__GefSzen.wxObjekt.gibClientData( lfdNr = 0 )
989 , spr_uebvar_id_reprgefszen = self.ListBox__ReprGefSzen.wxObjekt.gibClientData( lfdNr = 0 )[0] )
990
991
992
993
994
995 if( self.ListBoxAL__GefPersonen.ListBox__li.gibIstVomBenutzerGeaendert()
996 or self.ComboBox__Haeufig.wxObjekt.gibIstVomBenutzerGeaendert()
997 or self.ComboBox__GefStufe.wxObjekt.gibIstVomBenutzerGeaendert()
998 or self.TCASRisikostufe.wxObjekt.gibIstVomBenutzerGeaendert() ) :
999
1000
1001
1002
1003 if( self.ListBoxAL__GefPersonen.ListBox__li.gibIstVomBenutzerGeaendert() ) :
1004
1005
1006
1007
1008 ps_abk_id = self.dbVerbindung.gibListePsAbkId( psAbkTyp = 'GP')
1009
1010
1011
1012
1013 for i in range( len( self.ListBoxAL__GefPersonen.ListBox__re.gibClientData() ) ) :
1014
1015 if( self.ListBoxAL__GefPersonen.ListBox__re.gibClientData( lfdNr = i )[0] in ps_abk_id ) :
1016
1017
1018
1019
1020 listeWerte = []
1021 listeWerte.append( self.ListBoxAL__GefPersonen.ListBox__re.gibClientData( lfdNr = i )[0] )
1022 listeWerte.append( 0 )
1023 listeWerte.append( zk.gibZk( '' ) )
1024
1025 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte
1026 , logentfernt = 'true' )
1027
1028
1029
1030
1031 for i in range( len( self.ListBoxAL__GefPersonen.ListBox__li.gibClientData() ) ) :
1032
1033
1034
1035
1036 if( self.ListBoxAL__GefPersonen.ListBox__li.gibClientData( lfdNr = i )[0] in ps_abk_id ) :
1037
1038 continue
1039
1040
1041
1042
1043 listeWerte = []
1044 listeWerte.append( self.ListBoxAL__GefPersonen.ListBox__li.gibClientData( lfdNr = i )[0] )
1045 listeWerte.append( 0 )
1046 listeWerte.append( zk.gibZk( '' ) )
1047
1048 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte )
1049
1050
1051
1052
1053 if( self.ComboBox__Haeufig.wxObjekt.gibIstVomBenutzerGeaendert() ) :
1054
1055
1056
1057
1058 ps_abk_id = self.dbVerbindung.gibListePsAbkId( psAbkTyp = 'RH')
1059
1060
1061
1062
1063
1064 listeWerte = []
1065 listeWerte.append( ps_abk_id[0] )
1066 listeWerte.append( 0 )
1067 listeWerte.append( zk.gibZk( '' ) )
1068
1069 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte
1070 , logentfernt = 'true' )
1071
1072
1073
1074
1075
1076 listeWerte = []
1077 listeWerte.append( self.ComboBox__Haeufig.wxObjekt.gibClientData() )
1078 listeWerte.append( self.ListBox__HaeufigBegr.wxObjekt.gibClientData( lfdNr = 0 )[0] )
1079 listeWerte.append( self.ListBox__HaeufigBegr.wxObjekt.gibClientData( lfdNr = 0 )[1] )
1080
1081 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte )
1082
1083
1084
1085
1086
1087
1088
1089 if( self.ComboBox__GefStufe.wxObjekt.gibIstVomBenutzerGeaendert() ) :
1090
1091
1092
1093
1094 ps_abk_id = self.dbVerbindung.gibListePsAbkId( psAbkTyp = 'RG')
1095
1096
1097
1098
1099
1100 listeWerte = []
1101 listeWerte.append( ps_abk_id[0] )
1102 listeWerte.append( 0 )
1103 listeWerte.append( zk.gibZk( '' ) )
1104
1105 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte
1106 , logentfernt = 'true' )
1107
1108
1109
1110
1111
1112 listeWerte = []
1113 listeWerte.append( self.ComboBox__GefStufe.wxObjekt.gibClientData() )
1114 listeWerte.append( self.ListBox__GefStufeBegr.wxObjekt.gibClientData( lfdNr = 0 )[0] )
1115 listeWerte.append( self.ListBox__GefStufeBegr.wxObjekt.gibClientData( lfdNr = 0 )[1] )
1116
1117 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte )
1118
1119
1120
1121
1122
1123 if( self.TCASRisikostufe.wxObjekt.gibIstVomBenutzerGeaendert() ) :
1124
1125
1126
1127
1128 ps_abk_id = self.dbVerbindung.gibListePsAbkId( psAbkTyp = 'RR')
1129
1130
1131
1132
1133
1134 listeWerte = []
1135 listeWerte.append( ps_abk_id[0] )
1136 listeWerte.append( 0 )
1137 listeWerte.append( zk.gibZk( '' ) )
1138
1139 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte
1140 , logentfernt = 'true' )
1141
1142
1143
1144
1145
1146 listeWerte = []
1147 listeWerte.append( self.TCASRisikostufe.wxObjekt.gibClientData()[0] )
1148 listeWerte.append( self.ListBox__RisikoStufeBegr.wxObjekt.gibClientData( lfdNr = 0 )[0] )
1149 listeWerte.append( self.ListBox__RisikoStufeBegr.wxObjekt.gibClientData( lfdNr = 0 )[1] )
1150
1151 self.dbVerbindung.schreibe__prjPlPsGefsabk( listeWerte = listeWerte )
1152
1153
1154
1155
1156
1157 if( self.ListBoxAL__GefNetz.ListBox__li.gibIstVomBenutzerGeaendert() ) :
1158
1159
1160
1161
1162 str_strkt_id = []
1163 if( self.dbVerbindung.ps_gefszenario_id in self.dbVerbindung.daten__GefszenId_StruktId__Projekt ) :
1164
1165 str_strkt_id = self.dbVerbindung.daten__GefszenId_StruktId__Projekt[self.dbVerbindung.ps_gefszenario_id][0]
1166
1167
1168
1169
1170
1171 for i in range( len( self.ListBoxAL__GefNetz.ListBox__re.gibClientData() ) ) :
1172
1173 if( self.ListBoxAL__GefNetz.ListBox__re.gibClientData( lfdNr = i )[0] in str_strkt_id ) :
1174
1175
1176
1177
1178 listeWerte = []
1179 listeWerte.append( self.ListBoxAL__GefNetz.ListBox__re.gibClientData( lfdNr = i )[0] )
1180 listeWerte.append( zk.gibZk( '' ) )
1181
1182 self.dbVerbindung.schreibe__PrjPlPsGefStrkt( listeWerte = listeWerte
1183 , logentfernt = 'true' )
1184
1185
1186
1187
1188
1189 for i in range( len( self.ListBoxAL__GefNetz.ListBox__li.gibClientData() ) ) :
1190
1191
1192
1193
1194 if( self.ListBoxAL__GefNetz.ListBox__li.gibClientData( lfdNr = i )[0] in str_strkt_id ) :
1195
1196 continue
1197
1198
1199
1200
1201 listeWerte = []
1202 listeWerte.append( self.ListBoxAL__GefNetz.ListBox__li.gibClientData( lfdNr = i )[0] )
1203 listeWerte.append( zk.gibZk( '' ) )
1204
1205 self.dbVerbindung.schreibe__PrjPlPsGefStrkt( listeWerte = listeWerte )
1206
1207
1208
1209
1210
1211
1212 self.ListBox__GefSzen.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1213 self.ListBox__ReprGefSzen.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1214 self.ListBoxAL__GefPersonen.ListBox__li.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1215 self.ComboBox__Haeufig.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1216 self.ComboBox__GefStufe.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1217 self.TCASRisikostufe.wxObjekt.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1218 self.ListBoxAL__GefNetz.ListBox__li.nimmIstVomBenutzerGeaendert( istVomBenutzerGeaendert = False )
1219