Button, der den Inhalt mehrerer Textfelder in die Zwischenablage kopiert
Hallo,
ich bin relativ neu hier unterwegs (komme aus der FileMaker Welt) und probiere gerade ein wenig mit der Datenbankerstellung unter iOS herum.
Ich möchte jetzt einen Button erstellen, der den Inhalt mehrerer Textfelder (getrennt durch CR/LF) in die Zwischenablage kopiert, damit ich diese dann in einem anderen Programm einfügen kann.
Ist das möglich und wenn ja wie?
Danke & Gruß
OttoGeorg
24 Antworten
-
Ich fürchte, da gibt es keine Möglichkeit in Ninox. Nach meiner (bisherigen) Erfahrung erlaubt das Betriebssystem es nicht, direkt in die Zwischenablage zu schreiben.
Weil mich das grundsätzlich interessiert: Wie wird das in Filemaker gemacht, gibt es dort außer dem Befehl des Betriebssystems eine interne Möglichkeit? Wenn ja, könnte man das den Ninox-Entwicklern als Feature request schicken.
-
Oliver hat grundsätzlich recht - mit Standardmittel geht es momentan nicht. Ich habe eine Möglichkeit gefunden über html und JS sowas zu realisieren. Angenommen, daeine Textfelder heißen 'Feld 1','Feld 2' und 'Feld 3'.
Wenn du jetzt einen Berechnungsfeld erstellst und die Formel:
.........
let myT := 'Feld 1' + "
" + 'Feld 2' + "
" + 'Feld 3';
html(---
<input type="button" id="copyID" value="In die Zwischenablage kopieren" />
<textarea id="content">{ myT }</textarea>
<script type="text/javascript">
var button = document.getElementById("copyID"),
input = document.getElementById("content");
button.addEventListener("click", function(event) { "{" }
event.preventDefault();
input.select();
document.execCommand("copy");
alert("Folgender Text wurde in die Zwischenablage kopiert: "+content.value);{ "}" });
</script>
---)
.........
hinzufügst, kriegst du sowas wie einen Button "In die Zwischenablage kopieren". Wenn du drauf klickst erscheint ein popupFenster und die Dreif Felder sin in die Zwischenablage kopiert. Es ist nur so: unter diesenButton befindet sich noch ein Fenster mit Texten. Dieses kann mn nicht ausblenden bzw. wenn ich es ausblende funktioniert die Übername in Clipboard nicht. Ich weiß nicht ob es ein Programmfehler ist, dass Ninox Javascript in HTML erlaubt. Und wenn ja, wie lange diese Möglichkeit zur Verfügung steht. Momentan kann man nutzen.
Leo
-
Hier noch eine Beispieldatenbank:
https://www.dropbox.com/s/r357yzeknqtxs44/Zwischenablage.ninox?dl=0
Leo
-
Hallo Leo,
das ist ja eine tolle Lösung, die ich zwar überhaupt nicht verstehe (dafür reicht's bei mir nicht), aber super brauchbar ist.
Bei mir taucht nur das Problem auf, dass der "Button" beim Wechsel in einen anderen Datensatz nicht mehr funktioniert.
= es passiert nichts. -
Hallo Holzi,
Bei mir funktioniert die Zwischenablage in der Mac-App und in der Cloud auf Mac (Safari). Was nutzt du für Applikation?
Leo
-
Moin allerseits, bei mir funktioniert es auch mit Chrome auf Mac. Der helle Wahnsinn. Ich hatte eine solche Funktion bisher gar nicht vermisst, bin aber einmal mehr begeistert, das Leo wieder einen Weg gefunden hat. Gut möglich, dass mir jetzt, wo es geht, auch ein sinnvoller Nutzungszweck einfallen wird. Klasse!
-
Moin,
allen vielen Dank, wie das in FileMaker genau geht schaue ich mir morgen an und melde mich dann.
Gruß
OttoGeorg
-
Hallo zusammen, ich nutze die Mac-App. Aufruf über Button im Formular funktioniert. Wenn ich im gleichen Formular über die Ansicht in einen anderen Datensatz wechsele = neues Fenster, bewirkt der Button absolut nichts. Wahrscheinlich mache ich mal wieder irgendwas falsch?
-
Hallo,
also unter FileMaker gibt es einen Befehlt "Kopieren [Auswahl ; <Tabelle::Feld>]" (siehe auch https://fmhelp.filemaker.com/help/15/fmp/de/#page/FMP_Help%2Fcopy.html%23wwconnect_header).
Gruß
OttoGeorg
-
Hallo Holzi,
reden wir über meine Vorlage? Ein der 3 Felder muss gefüllt werden, damit im Feld oberhalb des Buttons ein Text erscheint. Dieser Text kann dann mit dem Button in die zwischenablage kopiert werden. Habe di Datenbank noch unter Nr 309_Skript_für_Zwischenablage ins Webinar Team hochgeladen.
Leo
-
Hallo Leo,
ja, exact Deine Vorlage.
Ich habe allerdings die Textfelder und den "Button" in ein Formular gepackt. Beim ersten auslösen funktioniert das script.
Wenn ich dann in einen anderen Datensatz wechsele (nicht in der Tabellenansicht sondern über einen Aufruf in der Ansichtstabelle) passiert nichts. Wechsele ich in der Tabellenansicht in einen anderen Datensatz und schalte wieder um in die "Ansicht" funktioniert der Aufruf wieder.
Ich habe Nr 309_Skript_für_Zwischenablage auch ausprobiert. Kopie in die Zwischenablage funktioniert, aber die Meldung ist fehlerhaft (siehe Screenshot). -
Kann es es sein , dass du das ganze auf einem iPad versuchst? Ich habe jetzt mein altes iPad ausgegraben. Dort funktioniert das ganze gar nicht- werde in der App noch im Web ( obwohl Java Script aktiviert ist).
Also Einschränkung: Momentan geht in MacApp und in der Web auf Mac (Safari) und Windows (Chrome)
Leo
-
Hallo Leo,
imac, aktuelles OS, MacApp (nichts anderes)Ist ja nicht so wichtig, aber hier für Dich mal zum nachsehen:
https://www.dropbox.com/s/z7vol7pemxc6yii/Leo_Zwischenablage.ninox?dl=0
-
wenn du einen neuen Datensatz erstellst, ist dein Feld "Zusammengefasstetags" leer.
wenn ich die Feormel von f(x)-Feld anschaue- hast du dort :
---
"let myT := "Bezeichnung: " + Bezeichnung + "
" + Zusammengefasstetags;"
---
rein geschrieben. Wenn aber Zusammengefasstetags leer ist kommt als Meldung nur Bezeichnung: DEINEBEZEICHNUNG.
Und genau das wird in die Zwischenablage kopiert. Was genau erwartest du vom Button "in die zwischenablage kopieren"?
-
Ich hatte das Beispiel nur geschickt um auf das Problem "Wechsel des Datensatzes" zu verweisen. Natürlich muss das Feld Zusammengefasstetags einen Inhalt haben. Also keinen neuen Datensatz anlegen, sondern einen bestehenden (mit Inhalt der Felder), dann in die Zwischenablage.
FUNKTIONIERT.
Dann Wechsel in einen anderen Datensatz über die Ansicht. Es geht ein neues Fenster mit dem angewählten Datensatz auf. Jetzt funktioniert das kopierenn in die Zwischenablage nicht mehr. -
Ok, jetzt habe ich kapiert und auch nachvollzogen. Tatsächlich funktioniert es in diesem Fall nicht, warum auch immer.
-
Hallo Leo.
Deine Lösung bzgl. Zwischenablage habe ich in mein System eingebaut. Genau das, was ich seit Monaten gesucht habe. Funktioniert in der Mac-Version perfekt. Vielen Dank.
Ich verfolge Deine Lösungen und Ideen schon lange, einfach der Hammer. Du bist wie ein wandeldes Lexikon :-).
Dem Funktionsfeld habe sogar noch einen Trigger beim Anklicken zugefügt, in einem anderen Feld eine Markierung für "schon kopiert" zu setzen.
VG Jens
-
Ich habe Leo's Funktion mal ein bisschen erweitert, um die neuen Deep-Links auszulesen und zu kopieren. So kann man schnell und einfach die Deep-Links in ein Feld einsetzen und einen Verweis auf einen Datensatz machen z.B. um auf ein Produkt zu verweisen.
Es funktioniert in der Mac-App und im Web:html(---
<textarea rows="3" id="content" readonly><script>function (){ "{" }
url = window.location.href;{ "}" }</script></textarea><br>
<p align="right">
<input type="button" wight="100%" id="copyID" value="In die Zwischenablage kopieren" /></p>
<script type="text/javascript">
var text = window.location.href;
var res = text.replace("file:///Applications/Ninox%20Database.app/Contents/Resources/html/index.html", "https://app.ninox.com/");
document.getElementById("content").innerHTML = res;
var button = document.getElementById("copyID"),
input = document.getElementById("content");
button.addEventListener("click", function(event) { "{" }
event.preventDefault();
input.select();
document.execCommand("copy");
alert("Folgender Text wurde in die Zwischenablage kopiert:\n\n"+content.value);{ "}" });
</script>
---)
-
Hallo Matthias,
sieht sehr gut aus. Zu Deeplinks muss ich aber sagen, dass diese Funktion leider für mich nutzlos ist. Normalerweise baue ich die Datenbanken so, dass Ninox nach dem Start die Dashboard-Tabelle öffnet. Wenn man den Deeplink aus Email öffnet (Projektmanagement, Aufgabenverwaltung) dann öffnet sich der Browser und landet im Dashboard. Zu der eigentlichen Aufgabe kommt man nicht. Sehr schade.
Leo
-
Ja genau. Bei der Funktion nach dem Öffnen ist es leider nutzlos.
Habe die Formel bei einem Kunden eingebaut, der seine Geräte mit einem Produktblatt beschriftet und dort einen QR-Code braucht um direkt zum Gerätedatensatz zu gelangen.
Die Deeplinks müssten eigentlich von der Priorität die „Nach dem Öffnen“-Funktion überschreiben.Habe es leider noch nicht hinbekommen, dass er den Link direkt nach dem Anlegen eines DS in ein Textfeld schreibt. Vielleicht hat da jemand eine Idee.
-
Der Link hat die Struktur:
https://app.ninox.com/#/teams/XXXXXXXXXXX/database/YYYYYYYYYYYYY/module/B/view/TpGE1HmmV2dP8FDd/node/ZZ/tab/0. Diese variiert sich je nach Ansicht aber die XXXX ist Team-ID, YYYYY-Datenbank ID und ZZ ist die DatensatzID mit Tabellenkennung (z.B. B4 oder F34). Die Struktur kann man bei dem ersten Datensatz auslesen und dann nach anlegen so etwas schreiben:
---
LINKFELD:="https://app.ninox.com/#/teams/"+teamId()+"/database/"+databaseId()+"/module/B/view/TpGE1HmmV2dP8FDd/node/"+raw(this)+"/tab/0"
---
Leo
-
Hallo Community, seit dem letzten Update (vor 5 min) funktioniert die Kopieren Funktion in der App nicht mehr (Android). Zuvor ging ea immer beim zweiten Mal Drücken des Buttons. Woran liegts? Hier noch der Code:
let myT := Beschreibung;
html(---
<input type="button" id="copyID" value="Ausführen" />
<textarea rows="1" id="content">{ myT }</textarea>
<script type="text/javascript">
var button = document.getElementById("copyID"),
input = document.getElementById("content");
button.addEventListener("click", function(event) { "{" }
event.preventDefault();
input.select();
document.execCommand("copy");
alert("Folgender Text wurde in die Zwischenablage kopiert: "+content.value);{ "}" });
</script>
---)vielen Dank
-
weiss jemand weiter?
-
Hallo zusammen,
der Code von Leonid hat mir echt weitergeholfen. Ich möchte eine in Ninox gespeicherte IBAN über eine URL "https://de.iban.com/iban-checker" verproben lassen. Um hier möglichst viele Klicks zu sparen wäre es cool, wenn Leonids Skript gleichzeitig die URL öffnet.
Leider scheitern meine Versuche. Hat jemand eine Idee?
Das i-Tüpfelchen wäre, wenn die in der Zwischenablage gespeicherte IBAN, dann automatisch in das Feld der WebSide übergeben würde, aber ich denke, dass das mit einer MacOS Version von Ninox nicht geht; liege ich da richtig?
Viele Grüße
Michael
Content aside
- vor 2 JahrenZuletzt aktiv
- 24Antworten
- 5959Ansichten
-
1
Folge bereits