Ãœbersetzbare Felder des Artikelstamms

Michael Wanner

Sali Zäme

Wenn ich auf dem Artikelstamm Übersetzebare Benutzerdefinierte Felder (oder auch Beschreibung in Fremdsprache) habe und diese im z.B Englischen Kundenauftrag andrucken möchte, erscheinen mir diese Felder noch in Deutsch.
Wie kann ich erzeugen, dass diese Felder auch in der Sprache des Dokuments angedruckt werden?


Besten Dank für die Antwort

Gruess Michi

Philipp Knecht

Hi Michael

Prinzipiell werden die Artikelbezeichnungen wie man sie im Artikelstamm eingeben kann (Feld RDR1.Dscription) und die Usertexte (Feld OITM.UserText) schon mittels Query übersetzt.
In der nächsten Version kommen dann die Zahlungsbedingungen auch noch dazu.
Falls du weitere Felder die mittels B1 - Funktion übersetzt wurden andrucken willst kannst du die folgende Funktion benutzen welche du wie üblich mittels LD.GetMLDesc aufrufen kannst.
(Den Parameter "LangCode" kannst du direkt von den Ld.Txt - Parametern hernehmen)

hth

/// <summary>
/// Returns corresponding translation
/// </summary>
/// <param name="defValue">The Value if no Translation is found</param>
/// <param name="tableName">Tablename (Check OMLT)</param>
/// <param name="fieldName">FieldAlias (Check OMLT)</param>
/// <param name="pk">Primary Key (Check OMLT)</param>
/// <param name="langCode">LangCode (Check MLT1)</param>
/// <returns></returns>
public static string GetMLDesc(string defValue, string tableName,string fieldName, string pk, string langCode)

Manuel Grenacher

Für die Multilanguage (Übersetzungen) hier ein Beispiel eines UDF auf dem Artikel (OITM)

Die Funktion braucht folgende Parameter -> LD.GetMLDesc(string defValue, string tableName,string fieldName, string pk, string langCode)

Folgener Aufruf im VALUE Feld hinterlegen:

[quote]LD.GetMLDesc(DocumentRow("RowRowItems.U_FELD"),"OITM","U_FELD", DocumentRow("RowRowItems.ItemCode"),GetData("LD.Par.LangCode"))

defValue -> DocumentRow("RowRowItems.U_FELD"), Falls keine Übersetzung vorhanden ist, übernimmt er den Standardwert
tableName -> "OITM", Artikelstammdaten, Wenn es ein Beleg ist, kann hier ORDR verwendet werden.
fieldName -> "U_FELD", Ihr UserField
pk -> DocumentRow("RowRowItems.ItemCode"), ItemCode, kann in der OMLT Tabelle nachgesehen werden (Select * from OMLT)
langCode -> GetData("LD.Par.LangCode"), Code wird vom Layouter übergeben, kann auch vom GP gelesen werden.
0

Comments

0 comments

Please sign in to leave a comment.

Didn't find what you were looking for?

New post