Autor Beitrag
Hänsel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 144



BeitragVerfasst: Mo 16.04.18 14:33 
Hallo, kann jemand weiter helfen?

Aus meiner Datenbank muss ich eine txt-Datei exportieren.Die Satzlänge ist 128. Das funktioniert bei allen Sätzen bis auf den letzten Satz, der 20 Zeichen zu wenig bringt.
ausblenden Delphi
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
      while not tblASatz.Eof do
      begin
        sLineString := '';
        sLineString := sLineString + 'A';
        sLineString := sLineString + FillStr(tblASatz.FieldByName('Nr').AsString, 7'0', taRightJustify);
        sLineString := sLineString + FillStr(tblASatz.FieldByName('Ordnungsbegriff').AsString, 13' ', taRightJustify);
        sLineString := sLineString + FillStr(tblASatz.FieldByName('Nutzer_Nr').AsString, 20' ', taLeftJustify);
        sLineString := sLineString + FillStr(tblASatz.FieldByName('art').AsString, 1'0', taRightJustify);
        sLineString := sLineString + FillStr(''86' ', taRightJustify);
        Writeln(fExportFile,sLineString);
        tblASatz.Next;
      end;
      tblASatz.Close;

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
A00312001084800000720006060              0......................................................................................//Satzende
A00312001084800000730006059              0......................................................................................//Satzende
A00312001084800000740006058              0......................................................................................//Satzende
A00312001084800000750006061              0......................................................................................//Satzende
A00312001084800000760006074              0......................................................................................//Satzende
A00312001084800000770006075              0......................................................................................//Satzende
A00312001084800000780006076              0......................................................................................//Satzende
A00312001084800000790006073              0.....................................................................//Satzende

Was kann man hier eventuell ändern?

Danke schon mal im Voraus!!

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt
Moderiert von user profile iconTh69: Titel geändert.
Moderiert von user profile iconTh69: Topic aus Datenbanken (inkl. ADO.NET) verschoben am Di 17.04.2018 um 08:52
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 16.04.18 15:47 
Hallo,

schließt du auch die Datei (anhand des Handles fExportFile) korrekt? Ansonsten befinden sich evtl. noch Daten im internen Puffer.
Hänsel Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 144



BeitragVerfasst: Mo 16.04.18 16:30 
Das sieht fast so aus, wie Du das beschrieben hast. Wie könnte das schließen aussehen? Könntest Du mir da weiterhelfen?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 17.04.18 08:10 
Das sollte mit CloseFile gehen:
www.delphibasics.co....L.asp?Name=closefile

// EDIT:
Ich sehe schon, ist erledigt:
www.entwickler-ecke....ewtopic.php?t=117003
Statt ein neues Thema zu erstellen kannst du übrigens auch auf Thema melden klicken und um Verschiebung an die richtige Stelle bitten. ;-)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 17.04.18 08:51 
Ich hatte selber nicht gemerkt, daß dieser Thread nicht im richtigen Bereich war.