Autor Beitrag
Samarek
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23

Win 7 Prof, Ubuntu 9.10
Java(Eclipse), C/C++/C# (VS 2008, VC# EE)
BeitragVerfasst: Mo 13.07.09 21:58 
hab mir ein kleines progi geschrieben dass meine Arbeitszeit mitzählt, die Kosten errechnet und das ganze auf Wunsch in eine html-tabelle (also eigentlich reine txt-datei) speichert
jetzt will ich ausserdem noch dass ...
- wenn der dateiname schon im Ordner vorhanden ist eine neue html tabelle unter die bestehende(n) geschrieben wird
und
- die Kosten aus allen Tabellen zusammengerechnet und in eine weitere Tabelle geschrieben werden

bei Delphi/Pascal greife ich auf knapp 10 Jahre altes Schulwissen zurück, darum siehts bei mir etwas mau aus (Pisa lässt grüßen ;) )
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 13.07.09 22:05 
Hallo und :welcome: in der EE!

user profile iconSamarek hat folgendes geschrieben Zum zitierten Posting springen:
- wenn der dateiname schon im Ordner vorhanden ist eine neue html tabelle unter die bestehende(n) geschrieben wird

Mit Suche in: Delphi-Forum, Delphi-Library FILEEXISTS kannst du prüfen ob eine Datei existiert.

user profile iconSamarek hat folgendes geschrieben Zum zitierten Posting springen:
- die Kosten aus allen Tabellen zusammengerechnet und in eine weitere Tabelle geschrieben werden

Mit Suche in: Delphi-Forum, Delphi-Library FINDFIRST und Suche in: Delphi-Forum, Delphi-Library FINDNEXT alles durchsuchen und summieren.

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Samarek Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23

Win 7 Prof, Ubuntu 9.10
Java(Eclipse), C/C++/C# (VS 2008, VC# EE)
BeitragVerfasst: Mi 15.07.09 13:26 
schön, schön
herzlichen dank
das "fileexists" war schonmal sehr hilfreich, danke
das "findfirst" und "findnext" blick ich nich so ganz
und wie ich ans ende einer datei schreibe weiss ich auch noch nicht

würd mich über ein paar hinweise und/oder erläuterungen freuen
Tastaro
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 414
Erhaltene Danke: 23



BeitragVerfasst: Mi 15.07.09 14:33 
Lade die ganze Datei einfach in eine Stringliste, ändere sie und speichere sie wieder.
Das geht am bequemsten.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure Form1.add_line(Filename, Line: string);
var
   MyFile: tstringlist;
begin
   MyFile := tstringlist.create;
   if fileexists(Filename) then   
      MyFile.loadfromfile(Filename);
   MyFile.add(Line);
   MyFile.savetofile(Filename);
   MyFile.free;
end;


Beste Grüße
Samarek Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23

Win 7 Prof, Ubuntu 9.10
Java(Eclipse), C/C++/C# (VS 2008, VC# EE)
BeitragVerfasst: Sa 18.07.09 12:10 
YEAH !!!
sehr gut, jetzt funktioniert alles, herzlichen Dank für die Hilfe

fehlt halt nur noch das kleine Gimmick alle Kosten zusammenzurechnen und auszugeben
wobei ich da halt noch folgende Schwierigkeiten sehe (abgesehen davon dass ich das FindFirst und FindNext nicht verstehe)

1. Erst bei der ersten Erweiterung der Datei wird eine Summierung notwendig
2. Es soll nur eine Summierung pro Datei erfolgen, also nur ein Gesamtergebnis dass sich bei jeder Erweiterung ändert, also muss ich ja im Prinzip bei jeder Änderung die alte Zeile mit dem Gesamtergebnis wieder löschen.

Man könnte im If-Zweig für die Erweiterung das bisherige Gesamtergebnis oder (falls das =0 ist) die ersten Arbeitskosten auslesen und mit den neuen Kosten summieren und in die Tabelle für Gesamtkosten eintragen

Theoretisch recht einfach, aber praktisch steh ich ein wenig auf dem Schlauch, also bitte ich einmal mehr um Hilfe :D
Tastaro
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 414
Erhaltene Danke: 23



BeitragVerfasst: Mo 20.07.09 07:49 
Hallo,

die Hinweise auf FindFirst und FindNext haben eigentlich nix mit deinem Problem zu tun. Die Funktionen sind dazu da um zu ermitteln welche Dateien sich in einem Verzeichnis befinden.

ausblenden Delphi-Quelltext
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:
procedure Form1.add_line(Filename, Line: string);
var
   MyFile: tstringlist;
   LastLine: string;
   Summe: real;
begin
   Summe := 0;
   MyFile := tstringlist.create;
   if fileexists(Filename) then
   begin
      MyFile.loadfromfile(Filename);
      if MyFile.Count > 0 then
      begin
         LastLine := MyFile[MyFile.Count - 1];
         Summe := //aus der letzten Zeile die aktuelle Summe ermitteln
         //Letzte Zeile löschen
         MyFile.delete(MyFile.Count - 1);
      end;
   end;
   MyFile.add(Line);
   Summe := Summe + //Neuen Betrag dazu
   //Neue Sumem wieder anhängen
   //z.B.
   MyFile.add(floattostr(Summe));
   MyFile.savetofile(Filename);
   MyFile.free;
end;


Beste Grüße
Samarek Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 23

Win 7 Prof, Ubuntu 9.10
Java(Eclipse), C/C++/C# (VS 2008, VC# EE)
BeitragVerfasst: Fr 31.07.09 20:16 
Hab das Programm fertig
besten Dank an alle für die Hilfe

Dieser Thread kann geschlossen werden