Mehrere Zeilen in einen String packen und teilen

Bild Microsoft Dynamics 365 Business Central (ehem. Business-Edition)

Mehrere Zeilen in einen String packen und teilen

Beitragvon xenomode » 14. Januar 2020 06:12

Hallo MSDynamics Community,

ich habe nun folgendes Problem. Ich habe in einigen Zeilen einige HTML Tags die dann bei Zeile 1 beginnen und bei Zeile 2 enden. Ich hatte nun vor,
mehrere, wenn nicht sogar alle Zeilen in einen String zu packen und den dann erneut in einer Länge von 125 oder 250 zu teilen. Das ganze ist ein Report und keine Codeunit.

Beispiel:

1.Zeile : <p>Microsoft Dynamics is a line of enterprise resource planning (ERP)</p><p
2.Zeile : >and customer relationship management (CRM) software applications.<
3.Zeile : p>Microsoft markets Dynamics applications through a Network</p>

Lösche ich die HTML Tags

1.Zeile : Microsoft Dynamics is a line of enterprise resource planning (ERP) <p
2.Zeile : >and customer relationship management (CRM) software applications.<
3.Zeile : p>Microsoft markets Dynamics applications through a Network

Die HTML Tags habe ich mit Hilfe von Regular Expressions entfernt, leider bleiben an einigen Zeilen noch die <p bestehen und um dieses Problem zu lösen,
würde mein oben genanntes Problem wahrscheinlich alles lösen.

Vielen Dank schonmal fĂĽr Eure Hilfe :)

LG
xenomode
 
Beiträge: 9
Registriert: 17. Dezember 2019 17:34

Re: Mehrere Zeilen in einen String packen und teilen

Beitragvon fiddi » 14. Januar 2020 08:28

Hallo,

Textvariablen dĂĽrfen in NAV2013.. bzw. BC bis zu 2 GB groĂź werden. Daher ist es sicherlich kein Problem deinen Text in einer Textvariable zusammenzufassen.

GruĂź Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: Mehrere Zeilen in einen String packen und teilen

Beitragvon xenomode » 14. Januar 2020 08:41

Ja, aber wie genau packe ich denn alles in einen String um diesen dann in einer Länge von 250 zu teilen?

GruĂź
xenomode
 
Beiträge: 9
Registriert: 17. Dezember 2019 17:34

Re: Mehrere Zeilen in einen String packen und teilen

Beitragvon fiddi » 14. Januar 2020 08:58

Hallo,

warum möchtest du den String denn bei 125 oder 250 teilen? Zum Speichern in einer Tabelle?
Eine einfache Lösung könnte sein (für nicht allzu große Texte)
Code: Alles auswählen
while strlen(Text) >0 do BEGIN
  i+=1;
  TextArr[i] := COPYSTR(Text,1,250);
  if Text <>'' then
    Text= copystr(Text,251); 
END


GruĂź Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: Mehrere Zeilen in einen String packen und teilen

Beitragvon xenomode » 14. Januar 2020 09:01

fiddi hat geschrieben:Hallo,

warum möchtest du den String denn bei 125 oder 250 teilen? Zum Speichern in einer Tabelle?
Eine einfache Lösung könnte sein (für nicht allzu große Texte)
Code: Alles auswählen
while strlen(Text) >0 do BEGIN
  i+=1;
  TextArr[i] := COPYSTR(Text,1,250);
  if Text <>'' then
    Text= copystr(Text,251); 
END


GruĂź Fiddi


Genau.

Will alle Zeilen erst in einen großen String packen, alle tags entfernen damit nur der Text zu sehen ist und am Ende den großen String in einer Länge von 250 Satzzeichen teilen.
xenomode
 
Beiträge: 9
Registriert: 17. Dezember 2019 17:34

Re: Mehrere Zeilen in einen String packen und teilen

Beitragvon fiddi » 14. Januar 2020 09:09

Hallo xenomode,

bitte verwende keine Vollzitate. Kopiere den Text den du zitieren möchtest und platziere ihn in einem Quote-Tag.

GruĂź Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell


ZurĂĽck zu 365 Business Central

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast