Hallo Peter,
Wir haben dein Thema im Team diskutiert. Manche Felder unterstützen nicht die automatische Umwandlung der Umlaute. Das liegt daran, dass diese Felder nicht dafür gedacht waren, auf den Belegen angezeigt zu werden.
Hast du in den Grundeinstellungen die Option “HTML in Briefpapier und Text erlauben” aktiviert? Du kannst auch probieren den Inhalt mit einem Pretag zu übermitteln. Vielleicht kannst du deine Information auch besser in einem anderen Feld übermitteln, zB. Freitext oder Kopftext.
Wahrscheinlich wirst du noch ein bisschen ausprobieren müssen, welche Lösung für dich funktioniert.
Beste Grüße, Johannes
Hallo Johannes,
habt ihr denn keinen direkten Hinweis wie man das fixen könnte?
Hier der Code des Teils vom Briefpapier, den es betrifft.
Es geht um den Part “internebemerkung”
private function renderHinweise()
{
$lineHeight = 5;
$xOffset = 10;
$yOffset = 27;
$sql = "SELECT * FROM auftrag WHERE id = " . $this->id;
$auftragsdaten = $this->app->DB->SelectArr($sql);
$this->setXY($xOffset, $yOffset);
$this->SetFont($this->GetFont(), '', 11);
$this->Cell(170, 10, 'Hinweise:', 0, 0, 'L');
$this->setXY($xOffset, $this->getY() + 5);
$this->SetFont($this->GetFont(), 'B', 11);
$hinweise = $auftragsdatend0]e'internebemerkung'];
$ydavor = $this->GetY();
$this->MultiCell(190, 10, $hinweise, 0, 'L');
$ydanach = $this->GetY();
$hoeheHinweis = $ydanach - $ydavor + 30;
$this->setXY($xOffset, $this->getY());
$this->Line($xOffset, $this->GetY(), 200, $this->GetY());
$this->globalYOffset = $hoeheHinweis;
$this->abseite2y = $hoeheHinweis + 10;
Übrigens, bei Freitext habe ich den gleichen Fehler!
Es ist doch bestimmt an der richtigen Stelle nur eine Kleinigkeit.
Die Option in den Grundeinstellungen ist gesetzt.
Gruß
Peter
Hallo,
habe die Lösung
private function renderHinweise()
{
$lineHeight = 5;
$xOffset = 10;
$yOffset = 27;
$sql = "SELECT * FROM auftrag WHERE id = " . $this->id;
$auftragsdaten = $this->app->DB->SelectArr($sql);
$this->setXY($xOffset, $yOffset);
$this->SetFont($this->GetFont(), '', 11);
$this->Cell(170, 10, 'Hinweise:', 0, 0, 'L');
$this->setXY($xOffset, $this->getY() + 5);
// $this->SetFont($this->GetFont(), 'B', 11);
$this->SetFont('Arial', 'B', 11);
$hinweise = $auftragsdatenn0]]'internebemerkung'];
$hinweiseneu = html_entity_decode($hinweise, ENT_QUOTES);
// $hinweiseneu = mb_convert_encoding($hinweise, "cp1252", "auto");
$ydavor = $this->GetY();
$this->MultiCell(190, 10, $hinweiseneu, 0, 'L');
$ydanach = $this->GetY();
$hoeheHinweis = $ydanach - $ydavor + 30;
$this->setXY($xOffset, $this->getY());
$this->Line($xOffset, $this->GetY(), 200, $this->GetY());
$this->globalYOffset = $hoeheHinweis;
$this->abseite2y = $hoeheHinweis + 10;
}
Ich bearbeite $hinweise mit html_entity_decode um und gebe es in $hinweiseneu aus.
Danach stimmt der Zeichensatz.
Gruß
Peter