Data-Edit-Element Menü

Ich möchte einem Feld Funktionalitäten zuweise wie z.B. "Neue Artikelnummer vorschlagen" bei Artikelnummer in Stammdaten/Artikel. Kann ich das auch ohne eine Datenklasse realisieren?
 
Legen Sie einen versteckten (Position in Sortierung=0) Kontextmenüeintrag im Kontextmenü des Elementes an. Hinterlegen Sie den Funktionsaufruf den Sie benötigen (z.B. MakroStarten mit Makro AufrufenDll). Parameterübergabe ist natürlich abhängig vom Funktionsaufruf. Daten des Kontext sollten hier zur Verfügung stehen.
Tragen Sie im Feld des Oberflächen-Elementes (vermutlich Data-Edit) in der Eigenschaft "Funktionsname" den Namen des Kontextmenüeintrages ein. Hinterlegen Sie in der Eigenschaft "Name der Bilddatei für Funktion" = "new_16" für den +-Button ein (andere Bitmaps in "Shared\Bitmaps\UI").
 
Ich habe ediArtikelstamm kopiert (Anhängen an Sage.Wawi) und alles bis auf Grundlagen/Details/EANNummer gelöscht. Data-Edit-Element-Registerkarte Grundlagen (Feld-Attribute anhängen). Daten-Element-Feldgruppe Details (Feld-Attribute anhängen). Daten-Edit-Element-Feld EANNummer (Feld-Attribute anhängen), Funktionsname "meineFunktion". Kontextmenü Artikelstamm mit Kontextmenüeintrag meineFunktion, Sortierung = 0. usw. Element EAN-Nummer bekommt trotzdem kein Button.
 
Es gibt leider kein weinenden Smiley. :( , aber danke und Entschuldigung für die unpräzise Frage. Ich vermute ich könnte das Feld ausblenden und ein eigenes zeigen, beim ändern dann den Wert in das richtige übertragen?
 
Die aktuell beste Lösung ist ein sichtbarer Kontextmenüeintrag, den der Anwender sich ja als Schaltfläche platzieren kann. Nur ein eigenes Feld reicht nicht, da alle nicht schreibgeschützten Felder in die INSERT/UPDATE-Statements mit aufgenommen werden. Das Feld müsste also in KHKArtikelVarianten vorhanden sein.

Wenn der Anwender keine manuellen Eingabe macht/machen darf, denn wäre diese Kombination eine Variante:
Eigenes Feld, mit SQL = Feld EANNummer (also gelesen wird immer aus EANNummer), Schreibschutz aktivieren, Feld ausschließen beim Kopieren
Aufnahme im Data-Edit und gleichzeitig hier Standardfeld EANNummer Sichtbarkeit = Versteckt
Im Ereignis "Beim Anzeigen" Feldwert übertragen von EANNummer in eigenes Feld, im Ereignis "Nach Aktualisierung" beim eigenen Feld "Rückübertragung" nach EANNummer. Füllen des eigenen Feldes mit Kontextmenüeintrag.

Hinweis: falls Sie ausprobieren, den Button an das eigene Feld zu heften, dann werden Sie feststellen, dass der Klick auf den Button funktioniert. Das ist aber KEINE Empfehlung von mir, da ich mir nicht sicher bin, ob das eventuell ein Bug bei uns ist.

Weiterer Ansatz, wenn das Feld editierbar bleiben muss:
Sichtbarer Kontextmenüeintrag und ändern des Standardfeldes via Codierung (Ableitung von MacroProcessBase, EANNummer mit neuem Wert als NamedParameter zurückgeben).
Das muss nicht zwingend der letzte Stand sein. Mit einem benutzerdefinierten Feld könnte man es ziemlich elegant lösen. Nur: zurzeit werden nur Position in Sortierung und Sichtbarkeit übernommen. Das soll um andere Eigenschaften erweitert werden. Ich kann Ihnen aber kein Termin nennen.
 
Zurück
Oben