Neuer Datensatz Button
Hallo Zusammen
Wie kann ich in einer Tabelle mit einem Button einen neuen Datensatz aslegen?
Gruss Sandro
23 Antworten
-
Hallo Sandro,
z.B. so:
---
let newContact:=create Kontakte;
newContact.Name:="leo"
---
Leo
-
Indem Du dem Button eine Funktion gibst. Mit aktiviertem Schraubenschlüssel und einer Tabelle "Test" geht das z.B. mit:
create Test;
-
Perfekt, vielen Dank euch
-
Hab mal beides versucht, ein neuer Datensatz wird erstellt. Bekomme ich es aber noch hin, dass ich dann gleich weiter schreiben kann? Das sich der neue Datensatz gleich öffnet meine ich?
-
Du kannst (zumindest am Mac) einfach cmd+n drücken und dann poppt der neue Datensatz gleich mit auf. Wenn Du es per Button machen willst, müsstest Du den Befehl popupRecord verwenden.
-
let newContact:=create Kontakte;
newContact.Name:="leo"
popupRecord(record(Kontakte,number(newContact.Nr)))
-
Hallo Leo und Dirk
Habe es nun mal mit und ohne Nummer versucht. Erhalte aber immer den Fehler Ende erwartet popupRecord
let newAufgabe:=create Aufgaben;
newAufgabe.'Aufgabe *':=""
popupRecord(record(Aufgaben,number(newAufgabe.Nr)))Gruss Sandro
-
Da habe ich wohl das Semikolon am ende der Zeile 2 vergessen. Du rauchst aber hier die zeile zwei gar nicht, wenn du die Aufgabe leer haben möchtest.
---
let newAufgabe:=create Aufgaben;
popupRecord(record(Aufgaben,number(newAufgabe.Nr)))---
Leo
-
Semikolon am Ende müsste das Problem lösen Sandro. Probiere es mal. Wenn du nicht möchtest, dass sich die Popups stapeln, kann Du mit closeRecord(); den vorherigen Datensatz schließen. Musst Du aber vor dem popupRecord-Befehl anwenden.
-
Perfekt, vielen Dank an euch beide.
Ja auf das Semikolon hätte ich auch kommen können. den cloreRecord habe ich noch eingebaut.
Gruss Sandro
-
Hallo zusammen,
kann mir einer sagen, warum das hier nicht funktioniert?
Hab eine Datenbank die heisst BESUCHER in der gibt es aktuell nur die Textfelder Nachname und Vorname
Und meine Startseite ist auch eine Datenbank mit einem einzigen Datensatz. Dort gibt es das Feld Vorname. und Nachname. und den Button: NEUANMELDUNG mit folgender Funktion. Er findet aber angeblich die Tabellenspalten Nachname. und Vorname. nicht... Wenn ich statt dessen einen Text mit "" angebe fügt der den ein. Hab auch mal das Backup angefügt...
let newBESUCHER := (create BESUCHER);
newBESUCHER.(Nachname := 'Nachname.');
newBESUCHER.(Vorname := 'Vorname.');
popupRecord(record(BESUCHER,number(newBESUCHER.Nr)))Gruß Florian Wisser
https://www.dropbox.com/s/olzmjajohcx9wom/BESUCHERANMELDUNG.ninox?dl=0
-
P.S. ich hab das urspünlgich so eingetragen wie LEO vorgeschlagen hat aber die Klammern setzten sich jedes mal automatisch und ersetzen die ' '
-
Habs jetzt auf Umwegen gelöst. Sollte aber doch eigentlich auch so gehen...
let x1 := 'Nachname.';
let x2:= 'Vorname.';let newBESUCHER := (create BESUCHER);
newBESUCHER.(Nachname := x1);
newBESUCHER.(Vorname := x2);
popupRecord(record(BESUCHER,number(newBESUCHER.Nr))) -
Geht es denn wenn du
this.
Vor Nachname.‘ machst ?
Ansonsten sucht er nämlich in dem erstellten BESUCHER Datensatz nach dem Feld, weiß nur nicht ob this dann abhilft aber denke schon, sonst wäre es so wie du gemacht hast richtig
Grüße
-
Hallo,
let my := this;
let newBESUCHER := (create BESUCHER);
newBESUCHER.(Nachname := my.'Nachname.');
newBESUCHER.(Vorname := my.'Vorname.');
popupRecord(newBESUCHER)
hast Du die Felder tatsächlich mit Punkt am Ende benamt ("Nachname.", "Vorname.")? Intuitiv wäre ich von
newBESUCHER.(Nachname := my.Nachname);
newBESUCHER.(Vorname := my.Vorname);
ausgegangen.
lg, Torsten
-
Hi,
ja das mit dem Punkt hatte ich nur mal gemacht um einen Unterschied bei den Feldern zur anderen Datenbank zu bekommen. Aber Danke funktioniert so! lg
-
Warum geht der Button aber nicht mehr, wenn man die Funktion Datensatz erstellen für den Benutzer generell abstellt?
-
Hallo Andreas,
ich nehme an das hast Du schon selbst beantwortet. Wenn das erstellen von demjenigen Benutzer der mittels des Buttons das skript ausführte: "Erstelle Datensatz (create DATENSATZ), dazu aber keine Berechtigung hat, nehme ich an gehts auch nicht.
lg Flo
-
Für was braucht man dann aber einen Button? Hat er die Berechtigung kann er es über + machen, oder habe ich hier einen Denkfehler. Der Button bekommt erst dann Sinn, wenn man dadurch das Kopieren eines Datensatzes verhindenr kann und dafür müssen die Icons in der Kopfzeile (Kopieren und Neu erstellen) erst einmal deaktiviert werden. Dann finktioniert aber der Button auch nicht mehr!
-
Nein der Button ist einfach eine möglichkeit verschieden Funktionen innerhalb eines bestehenden Datensatzes auszuführen. In meinem Fall oben hat der Button z.B. noch eine erweiterte Funktion (Hab nicht das gesamten Skript da drin stehen) das er erst sucht ob ein Datensatz mit dem Namen und Vornamen schon vorhanden ist, wenn ja diesen öffnet und wenn nein, einen neuen Erstellt und da die Felder schon vorausfüllt. Ist ja ganz was anderes. Die Buttons kann man ja für viele Dinge nutzen
-
.. dennoch total nervig, dass das Button-Script strikt nach User-Recht handelt. Das war unter V2.x noch anders, da hat duplicate() oder delete() in Skripten noch unabhängig vom Userrecht funktioniert.
lg, Torsten
-
Ah war das so? Ok hatten den Fall glaube ich gar nicht. Man könnte sich dann evtl. helfen wenn man nicht Datensätze nur von bestimmten Usern zum erstellen zulässt sondern über "nur schreibst wenn:" userhasrole() or "hilfsfeld" = true, und das verdeckte Hilfsfeld dann vor dem erstellscript auf True und dahinter wieder false setzen? Nur so als Gedanke. Müsste man mal testen.
-
die Rechte zum erstellen oder löschen von Datensätzen lassen sich ausschließlich über die Rollen steuern... :-/
Content aside
- vor 4 JahrenZuletzt aktiv
- 23Antworten
- 8945Ansichten