Thread Hilfestellung bei Problem mit package
(20 answers)
Opened by jan99 at 2015-03-27 08:06
Moin !
erst einmal vielen Dank. Jetzt habe ich einen Teil verstanden schon einmal. In den sub shell bzw. log wird in $self->{$XXXX} der jeweilige Wert in $XXXX abgelegt. Das Schalten der Statusschalter funktioniert schon einmal. Habe zunächst das show etas modifiziert bei mir eingebaut. Code (perl): (dl
)
1 2 3 4 sub show_status { my $self=shift; print "Log: ", $self->log(), ", Shell: ", $self->shell()."\n"; } und dann in write eingebaut: Code (perl): (dl
)
1 2 3 4 5 sub write { $_[0]->show_status(); $_[0]->fh->print($_[1]."\n") if($_[0]->log()); print($_[1]."\n") if($_[0]->shell()); } Die ersten Zeilen in meinem Hauptskript sehen jetzt so aus: Code (perl): (dl
)
1 2 3 4 5 # Reportsteuerung my $log=EBL::ebl_reporting->new(); $log=EBL::ebl_reporting->open($config{logfile_name}); $log->log($config{logstatus}); $log->shell($config{shellstatus}); Merkwürdigerweise erfolgt die Ausgabe in write aber immer noch in doppelter Bildschirm-Ausgabe! Mit dem STDOUT (eine meiner vielen Verständnisbaustellen) in open (wie gepostet und nicht verändert seit x-Zeiten!) hat das vermutlich nichts zu tun ?!?!? Hast Du dazu eine Erklärung ? Eine Frage noch zu Deiner Antwort. Warum hast Du die Zeile Eingefügt. Wenn ich das übertrage, dann würde ich das immer in 3 Dateien aufsplitten ! Gruß Jan PS: jetzt ist erst einmal Wochenende ... Euch auch ein schönes ! Last edited: 2015-03-27 12:45:31 +0100 (CET) perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
|