Hi Linuxer,
also hier mein Code. Ich rufe praktisch in einer
Foreach Schleife jeden Zeiteintrag auf, der aus
der DB gelesen wird und will ihn konvertieren :
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
foreach( @Ergebnis_SQL_Monitoring_DB )
{
my $Anzahl = 1;
my $x = 0;
for ( $x = 0; $x < $Anzahl; $x++ )
{
if ( defined( $Ergebnis_SQL_Monitoring_DB[$i][$x] ) and $Ergebnis_SQL_Monitoring_DB[$i][4] == $ARGV[3] ) {
print $Ergebnis_SQL_Monitoring_DB[$i][14] , "\n"; # Ausgabe der Inhalte aus der Abfrage
push( @DB_Rueckgabe_Parameter, $Ergebnis_SQL_Monitoring_DB[$i][14] ); # Erweiterung des Arrays um die Inhalte aus der Abfrage
print "\n";
print "TS aus DB - I : $Ergebnis_SQL_Monitoring_DB[$i][9]" , "\n"; # Lese genaue Zeit - Angabe ( V ) aus DB
print "TS aus DB - II : $Ergebnis_SQL_Monitoring_DB[$i][10]" , "\n"; # Lese genaue Zeit - Angabe ( B ) aus DB
$Konvertierung_TS_I = $Ergebnis_SQL_Monitoring_DB[$i][9]; # Umwandlung des Strings in Variable
$Konvertierung_TS_II = $Ergebnis_SQL_Monitoring_DB[$i][10]; # Umwandlung des Strings in Variable
&TS_Konvertierung(); # Aufruf der Sub zur Kovertierung des TS
&Pruefung_Strings( $Ergebnis_SQL_Monitoring_DB[$i][14] , $Ergebnis_SQL_Monitoring_DB[$i][4] ); # Aufruf der Sub zur Erkennung der Semicolons
}
}
$i++;
Und die Sub &TS_Konvertierung :
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
sub TS_Konvertierung {
my $TS_I_Date_Konvertierung = substr( $Konvertierung_TS_I , length( $Konvertierung_TS_I ) - 24 , 17 ); # Separierung des Datums
print "$TS_I_Date_Konvertierung" , "\n";
$TS_I_Date_Konvertierung =~ s/,\d+//;
# ------------------------------------------------------------------------------------------------------------
my $TS_II_Date_Konvertierung = substr( $Konvertierung_TS_II , length( $Konvertierung_TS_II ) - 24 , 17 ); # Separierung des Datums
print "$TS_II_Date_Konvertierung" , "\n";
$TS_II_Date_Konvertierung =~ s/,\d+//;
# ------------------------------------------------------------------------------------------------------------
my $t1 = Time::Piece->strptime( $TS_I_Date_Konvertierung, $DATEFORMAT );
my $t2 = Time::Piece->strptime( $TS_II_Date_Konvertierung, $DATEFORMAT );
if ( $t1 == $t2 )
{
$t1 += ONE_MINUTE;
$t1 = $t1->strftime($DATEFORMAT);
$t2 -= ONE_MINUTE;
$t2 = $t2->strftime($DATEFORMAT);
}
print $t1, "\n", $t2, "\n";
}
--------------------------------------------------------------------------
Hilft das weiter ?
Viele Grüße
PERLScripter
Last edited: 2014-12-09 00:13:32 +0100 (CET)