Hallo GwenDragon,
vielen Dank für die Hinweise. Bei 'use warnings;' erhalte ich allerdings Warnungen an anderer Stelle bei Code-Zeilen die einwandfrei funktionieren, die aber nicht im Zusammenhang mit meinem Problem stehen.
Alles andere habe ich eingebaut, aber leider gibt es keine Besserung im Ergebnis. Nach wie vor fehlt die letzte Datei. Mir erscheint es, als ob sie "wie in BUFFER" erzeugt wird, aber dann pyhsikalisch auf der Festplatte dann doch nicht erscheint. Wenn ich als Kontrolle den Systembefehl `ls -l $paht/$dateinamenvarible` hinter die close-Zeile setzte, dann erhalte ich keine Fehlermeldung.
Ich bin ratlos!
Gruß Achim
Nachfolgende "letzte Print-Ausgabe" auf dem Monitor unterscheidet sich nicht von den vorher ausgegebenen. Aber die Datei ist nicht vorhanden:
##############################################################################################
create_projekt_import.pl::f_read_write_file( </home/icnbg/projekte/startfolder/icnbg/oogpm/oogpm_000/labor>, <163330>, <LABOR>, <DE>, <TR>, \a_packagedatei );
trans_file = labor_de_cpt_141186_2013-07-27.txt
### DEPICTION_KEY: [LABOR-TR-CPT-141186]
### DEPICTION_ORI: [Labor-Kompo-Diagram-2]
### DEPICTION_NEW: []
### TRANSLATE_WAY: [DE > TR // DE Germany > TR Turkey]
### TRANSLATE_STA: [EXPORTED DE-TEXT]
### BOT:
### :EOT
#--------------------------------------------------------------#
##############################################################################################
Eine Umstrukturierung des Codes brachte auch keine Verbesserung:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
open( my $RF, "<", "$qpath/$qfile" ) || die "create_projekt_import.pl::ERROR 1.0: Kann die Datei zum Lesen nicht oeffnen: <$qpath/$qfile>\n";
while( <$RF> ) { push( @a_quelldatei, $_ ); }
close( $RF );
foreach( @a_quelldatei )
{
# --- 8< --- schnipp
if( $transtxt eq "letzteZeile" && $key_zeil eq "ja" )
{
# --- 8< --- schnipp
open( my $WF_2, ">", "$qpath/TRANSLATE/$trans_file" ) || die "change_language.pl::FATAL 1.1: Kann die Datei zum Schreiben nicht oeffnen: <$qpath/TRANSLATE/$trans_file>\n";
flock( $WF_2, LOCK_EX ) || die "change_language.pl::FATAL 1.2: Lock konnte nicht druchgefuehrt werden";
print $WF_2 @a_TranslateText;
close( $WF_2 );
# --- 8< --- schnipp
} #EO if transtxt eq letzteZeile (:EOT)
} #EO foreach( a_quelldatai )
Last edited: 2013-07-27 12:06:12 +0200 (CEST)