[Gelöst] Start-, Firmenlogo

28. Februar 2007 11:12

Hallo,

kann mir jemand sagen, wo in Navision die Logo Bitmap´s
für den Startbildschirm bzw. für das Firmenlogo des jeweiligen
Mandanten ablegt? In der Tabelle Firmendaten findet man unter
"Bild" nur ein Sternchen ???
Und besteht die Möglichkeit, im Startbidschirm Mandantenabhängige
Logos zu verwenden, um dem User visuell auf die unterschiedlichen
Mandanten hinzuweisen ?

Danke im Vorraus
Max
Zuletzt geändert von Max am 28. Februar 2007 14:39, insgesamt 1-mal geändert.

28. Februar 2007 11:24

Hallo Max,

das Sternchen zeigt dir an, das in dem BLOB Feld Daten vorhanden sind.
Wenn es sich dabei um Bilder handelt, kannst du diese nur in Reports und Forms anzeigen lassen. (In einer PictureBox!)

Die Tabelle "Firmendaten" ist schon richtig für Euer Firmenlogo.
Dieses kannst du über:
-->Finanzbuchhaltung-->Einrichtung-->Firmendaten
Laden / Einsehen und Löschen.

In der 2.6er Version kannst du das Startmenü entsprechend anpassen.
So, das im Menü das Firmenlogo angezeigt wird. Dann brauchst du nur noch je Mandant in den Firmendaten das entsprechende Bild hinterlegen.

Gruß Mikka

28. Februar 2007 11:50

Hallo Mikka,
mein Problem ist, das ich warscheinlich versucht habe ein zu großes Bitmap
einzulesen. Ich glaube mich zu erinnern, dass Diese nur ein paar Kb´s groß
sein dürfen. Wenn ich jetzt versuche die Form Firmendaten zu öffnen, stürzt mir jedes mal der Client ab. Versuche ich in der Tabelle die komplette Zeile zu löschen, springt unter "Bild" immer wieder das Sternchen von selbst rein.
Deshalb dachte ich, dass diese Bitmaps ja irgendwo abgelegt werden müsssen ????

Max

28. Februar 2007 12:54

Inhalte in BLOB-Feldern dürfen bis zu 2 GB groß werden, allerdings können Bitmaps in BLOB-Feldern nur dann in Forms bzw. Reports angezeigt werden, wenn sie bestimmte Abmessungen nicht überschreiten.

Wenn ich das richtig in Erinnerung habe, dann darf das Bitmap nicht größer sein, als die aktuelle Bildschirmauflösung, da Windows es sonst nicht ansprechen kann.
Es würde dann eine Fehlermeldung "Sie haben nicht genügend Ressourcen, um ..." erscheinen.

Wenn du schon in der Tabelle "Firmendaten" den kompletten Datensatz gelöscht hast, dann brauchst du dich um das Sternchen nicht kümmern.
Wo kein Datensatz, da kann auch kein Feldinhalt vorhanden sein.

Als Alternative hätte ich jetzt vorgeschlagen, dass du die Form "Firmendaten" im Designer öffnest, die PictureBox entfernst und aus dem Designer heraus startest. Anschließend kannst du über [Bild] -> [Löschen] das BLOB-Feld leeren.
Nun kannst du die Form und den Designer schließen (ohne zu speichern).

28. Februar 2007 13:16

Max hat geschrieben:mein Problem ist, das ich warscheinlich versucht habe ein zu großes Bitmap
einzulesen. Ich glaube mich zu erinnern, dass Diese nur ein paar Kb´s groß
sein dürfen.


Die 32 KB Grenze gilt nur für die "Image" Objekte, du kannst mit diesen die Navisioninteren und exterene Bilder anzeigen, zB.
Propertie "Bitmap"
entweder "c:\Dein_Bild.bmp"
oder eine Zahl zwischen 1 und 21
(In der Version 4 sind es erheblich mehr!)

Normalerweise sollte es es Problemlos klappen mit den Navision Features:
-->Bild Import / Export / Löschen

Versuche wie Timo es beschrieben hat, den Inhalt zu löschen und ein neues bild zu Importieren.
Ich könnte mir Vorstellen, das die Daten im BLOB Feld den Fehler verursachen!?
Gruß Mikka

28. Februar 2007 14:39

Super,
es hat geklappt,
ich bin den Fehler los

Danke
Max

wie bekommt man bild in startmenü

16. Juli 2008 16:19

Hallo Zusammen,

ich habe Euer Forum gefunden, da ich auch auf der Suche nach einer Beschreibung bin, wie man in die Form 330 Hauptmenü das Firmenlogo einbauen kann.

Wir haben das Firmenlogo schon unter Finanzbuchhaltung, Einrichtung... importiert und es wird auch schon auf Rechnungen etc. geholt.

Mein Problem ist allerdings, dass ich beim Einbinden der Picturebox in die Form 330 Hauptmenü nicht weiterkomme. Wenn ich in die Properties der Picturebox gehe und unter SourceExpr "Firmendaten.Bild" eingebe, kommt die Fehlermeldung "Unbekannte Variable..." beim Kompilieren.

Kann mir jemand weiterhelfen?

Vielen Dank im Voraus.

Rainer

16. Juli 2008 16:27

Die Form 330 erwartet, dass du unter SourceExpr ein Feld der aktuellen Tabelle (= SourceTable der Form) angibst.
Deine Form 330 hat aber keine SourceTable und damit auch kein Feld.

Ich wüsste nicht, wie du per Picturebox auf ein Bild verlinken kannst, das sich nicht in der gleichen Tabelle befindet :-/

16. Juli 2008 16:32

Hallo Natalie,

danke für Deine schnelle Antwort - super. Jetzt weiß ich, wie ich es nicht machen kann. Hast du eine andere Lösung?

Gruss, Rainer

16. Juli 2008 16:35

Wenn ich eine andere Lösung wüsste, hätte ich sie dir schon gesagt ;-)
Mir fällt dazu spontan nur eine "schmutzige" Lösung mit temporärer Bildablage auf den Clientrechnern ein, aber davon sehe ich jetzt ab ... Vielleicht haben ja andere eine Idee.

Welche NAV-Version betrifft das?

trotzdem danke

16. Juli 2008 16:46

Danke. Es handelt sich um die Version DE 2.50 (4.0 SP1)
Gruss, Rainer

16. Juli 2008 18:22

Natürlich ist das möglich (immerhin haben andere es ja auch hinbekommen).

Wo möchtest du das Logo denn anzeigen?
- Links unter den Menü-Punkten?
- In der Mitte (wo das Navision-Logo ist)?
- Nur auf der "Eingangsseite" oder in allen Menüs?

Das Prinzip ist immer dasselbe:
Klicke mit der Maus an die Stelle, wo das Bild später erscheinen soll.
Drücke [Strg]+[F2] für den Form-Designer.
Füge eine globale Variable "Firmendaten" vom Typ Record für Table 79 ein.
Drücke [F9] für den C/AL-Editor.
Im Trigger OnOpenForm() trägst du folgende zwei Zeilen ein:
Code:
Firmendaten.GET;
Firmendaten.CALCFIELDS(Bild);

Platziere eine PictureBox in der gewünschten Größe an die favorisierte Stelle.
Gebe der PictureBox die SourceExpression "Firmendaten.Bild"
Speichern & Schließen - Fertig!

Da du im Hintergrund noch das "alte" Hauptmenü (von vor der Anpassung) angezeigt bekommst, musst du es einmal schließen und mit [F12] neu öffnen.

Möchtest du das Bild in jedem Submenü angezeigt bekommen, so musst du die eben beschriebenen Schritte für jedes Submenü einzeln durchführen, von daher empfiehlt es sich, es (falls noch möglich) in der MainForm zu platzieren. Das spart auf jeden Fall eine Menge Fleißarbeit.