[gelöst] Bericht mehrsprachig ausgeben

19. Juni 2009 13:05

Hallo,
wir wollten gerade einen Bericht etwas anpassen und in diesem "erzwingen", dass die DebitorsprachID immer die Sprachwahl für jede Seite trifft.

Nun soweit, so gut.

der Befehlssatz:
CurrReport.LANGUAGE := Language.GetLanguageID("Language Code");

wurde eingefügt und gibt beim Aufruf einzelner Debitoren die richtige Sprach aus.
Ruft man jedoch mehrere Debitoren auf, gibt er die eingestellte Sprache des Debitors erst auf der nächsten Seite (beim folgenden Debitor) aus.

Mittlerweile habe ich keine Idee mehr woran es liegen könnte.
Alle Begriffe sind in DEU und ENU hinterlegt.

Danke
Stoni
Zuletzt geändert von stoned_n16 am 19. Juni 2009 14:40, insgesamt 1-mal geändert.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:13

Das sitzt wohl im falschen DataItem. Schau dir doch mal einen der Standard-Reports an, in dem das funktioniert (VK-AB oder so).

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:19

Das sitzt im DataItem Customer, woanders funktioniert es auch nicht, da er das Feld Language nicht kennt.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:21

Ein paar Infos mehr wirst du schon raus rücken müssen, wenn man nicht alles erraten soll :wink:

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:27

frag einfach was du wissen möchtest?!

ich hab grad keine ahnung was noch hilfreiche infos sind!

es ist der bericht "Debitor - Fällige Posten"
was kann ich noch als infos geben???

Customer - OnAfterGetRecord()
CurrReport.CREATETOTALS("Cust. Ledger Entry"."Remaining Amt. (LCY)");
CurrReport.LANGUAGE := Language.GetLanguageID("Language Code");
CurrReport.NEWPAGEPERRECORD := PrintOnlyOnePerPage;

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:44

Der Report 106? Standard (abgesehen von den Zeilen, die du oben geschrieben hast)?

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:47

ja genau der Report 106.

Er wurde schonmal angepasst.
23.04.07 -neue Felder "Mahnstufe" und "Datum letzte Mahnung"

Das war soweit die einzigste Anpassung nach meinem aktuellen Wissenstand
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von stoned_n16 am 19. Juni 2009 13:52, insgesamt 1-mal geändert.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:51

Und in welchen Feldern (bzw. Sections) soll die Sprache angepasst werden? Ich sehe da nur "Gesamt bzw. Total", abgesehen von den Überschriften ...

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 13:54

am besten in allen Feldern!
Umgestellt sind diese Bereits und überall ist ein Sprachcode hinterlegt...

die section Cust. Ledger Entry, Body (1) muss nicht unbedingt übersetzt werden...
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 14:01

Es wird aber nur "Telefon" das untere Gesamt/Total auf diesem Weg gehen, da die Überschriften im Header stehen, der Sprachcode aber erst im OnAfterGetRecord umgestellt wird. Korrekt?

Edit: hab die Screenshots eben erst gesehen. Sieht so aus :wink:

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 14:06

ja korrekt.

aber selbst wenn ich auf die Spracheinstellung im Customer - OnPreDataItem() vornehm sieht es so aus, bzw. wird überhaupt nur DEU ausgegeben.

hoffe die bilder helfen weiter! ;)

so hab mal nen bissl was verschoben...
jetzt siehts etwas witziger aus ;)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 14:18

Das OnPreDataItem wird vor allen Customer durchlaufen, und zwar genau einmal. Da kann es also nicht funktionieren (was dir sicher auch die CSide-Hilfe verraten hätte).

Spontan fällt mir als Lösung ein, dass du all den DataItems noch einen zusätzlichen DataItem Customer vorschaltest, Customer2 oder so. Die bisherigen werden alle einen weiter eingerückt, und der Customer2 gibt seine "No." per DataItemLink an den bisherigen. Wenn du nun im neuen DataItem Customer2->OnAfterGetRecord den Sprachcode umstellst, sollte das eigentlich klappen. Ist aber bloß eine Idee.

Re: Bericht mehrsprachig ausgeben

19. Juni 2009 14:26

danke dir!!!
das probier ich doch mal glatt!

Super geil!
Geht jetzt in die testphase!

Danke nochmals!!!

Re: [gelöst] Bericht mehrsprachig ausgeben

22. Juni 2009 13:32

kurz noch nebenbei, etwas was ich gern verstehen würde.

wenn wir mal das zusätzliche DataItem Customer weglassen, druckt er mir immer recht witzig die Sprache an...

also in Zusammenhängen
    -Ausdruck eines einzelnen Debitors mit Sprachwahl -> korrekte Sprachwahl
    -Ausdruck mehrerer Debitoren mit Sprachwahl und neue Seite pro Debitor -> erster Datensatz ist richtig, der Zweite nimmt die Sprache des Ersten, der Dritte die vom Zweiten usw.
    -Ausdruck mehrere Debitoren mit Sprachwahl ohne neue Seite pro Debitor -> erster Datensatz hat die Sprache des im Filter ersten angebenen Debitors auch wenn dieser nicht mit angedruckt wird
das ungewöhnlich für mich ist der 2. Stichpunkt, den dritten kann ich mir ja grad noch selber erklären...

Re: [gelöst] Bericht mehrsprachig ausgeben

24. Juni 2009 10:59

Wie hier schon geschrieben wurde stehen deine sprachbezogenen Felder (fast) alle im Header. Da der Header jedoch noch vor dem jeweiligen Record durchlaufen wird hat es beim ersten Mal die von dir beschriebenen Filter-Eigenschaften, beim Zweiten und allen Folgenden entsprechend die des vorhergehenden Records. Erst im Body stehen die Infos des jeweiligen Customers dann zur Verfügung.
Wenn du aber ohnehin für jeden Customer eine neue Seite öffnest und die Header auf "PrintOnEveryPage" stehen hast, kannst du deine Header-Sections auch einfach als Bodys definieren und umgehst das Problem damit.