Felder durch Klick auf Button in schreibgeschützt umwandeln
Felder durch Klick auf Button in schreibgeschützt umwandeln
.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Felder durch Klick auf Button in schreibgeschützt umwandeln
Hallo,
wie hast du das gemacht? Ich versuche gerade im LiveCycle Designer die Schaltfläche zu reproduzieren, aber ich finde einfach die Verbindung nicht.
Ich habe eine zweite Schaltfläche angelegt, die ebenfalls die Felder sperren soll.
wie hast du das gemacht? Ich versuche gerade im LiveCycle Designer die Schaltfläche zu reproduzieren, aber ich finde einfach die Verbindung nicht.
Ich habe eine zweite Schaltfläche angelegt, die ebenfalls die Felder sperren soll.
Felder durch Klick auf Button in schreibgeschützt umwandeln
Hallo Jonny,
haben Sie sich die Struktur mal genau angesehen und auch das Skript im Skripteditor?
Die Schaltfläche ist unsichtbar und darunter liegt ein Bildfeld mit dem Schloss drauf.
In der unsichtbaren Schaltfläche ist ein Skript im Click event hinterlegt:
var nButton = app.alert({
cMsg: "Möchten Sie wirklich alle Felder unwiederruflich sperren? \n\nFortfahren?",
cTitle: "Assure HSC",
nIcon: 1, nType: 2
});
if ( nButton == 4 )
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "protected";
}
}
// save value of lock
Lock.rawValue = "1";
padlockopen.presence = "invisible";
this.presence = "invisible";
}
form1.#subform[0].Protect::ready:layout - (JavaScript, client)
if (Lock.rawValue == "0")
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "open";
}
}
Protect.presence = "visible";
padlockopen.presence = "visible";
}
else
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "protected";
}
}
Protect.presence = "invisible";
padlockopen.presence = "invisible";
}
Wichtig ist, das die Namen der Felder alle identisch sind.
Versuchen Sie es wirklich exakt nachzubauen, dann funktioniert es.
Grüße
Julischka
haben Sie sich die Struktur mal genau angesehen und auch das Skript im Skripteditor?
Die Schaltfläche ist unsichtbar und darunter liegt ein Bildfeld mit dem Schloss drauf.
In der unsichtbaren Schaltfläche ist ein Skript im Click event hinterlegt:
var nButton = app.alert({
cMsg: "Möchten Sie wirklich alle Felder unwiederruflich sperren? \n\nFortfahren?",
cTitle: "Assure HSC",
nIcon: 1, nType: 2
});
if ( nButton == 4 )
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "protected";
}
}
// save value of lock
Lock.rawValue = "1";
padlockopen.presence = "invisible";
this.presence = "invisible";
}
form1.#subform[0].Protect::ready:layout - (JavaScript, client)
if (Lock.rawValue == "0")
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "open";
}
}
Protect.presence = "visible";
padlockopen.presence = "visible";
}
else
{
// Get the field containers from each page.
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
oFields.item(nNodeCount).access = "protected";
}
}
Protect.presence = "invisible";
padlockopen.presence = "invisible";
}
Wichtig ist, das die Namen der Felder alle identisch sind.
Versuchen Sie es wirklich exakt nachzubauen, dann funktioniert es.
Grüße
Julischka
Felder durch Klick auf Button in schreibgeschützt umwandeln
Kurze Frage hierzu,
welche Scripte muss ich hier ändern damit er mir NICHT alle Felder sperrt?
Soweit ich das richtig lesen sperrt er mir ja alle "Field" Felder.
Nun habe ich in meinem Formular den oberen Teil, der vom Mitarbeiter ausgefüllt wird und einen unteren Teil der vom den jenigen ausgefüllt werden muss der das Formular vom Mitarbeiter bekommt.
Habt ihr zu diesem Script eine Lösung oder muss ich über den .access = "readOnly" gehen?
Gruß
easyPerte
welche Scripte muss ich hier ändern damit er mir NICHT alle Felder sperrt?
Soweit ich das richtig lesen sperrt er mir ja alle "Field" Felder.
Nun habe ich in meinem Formular den oberen Teil, der vom Mitarbeiter ausgefüllt wird und einen unteren Teil der vom den jenigen ausgefüllt werden muss der das Formular vom Mitarbeiter bekommt.
Habt ihr zu diesem Script eine Lösung oder muss ich über den .access = "readOnly" gehen?
Gruß
easyPerte
Felder durch Klick auf Button in schreibgeschützt umwandeln
Ich habe auf der Basis dieses Scripts versucht, nur ein/oder mehrere Teilformular(e) zu sperren, komme aber nicht drauf. Ich kann natürlich alle Felder einzeln ansprechen, aber da gibt es sicherlich eine elegante Lösung.
Gruss
Hermann
Gruss
Hermann
Felder durch Klick auf Button in schreibgeschützt umwandeln
Hallo dreamer,
Man kann auch Teilformulare auf "schreibgeschützt" setzen. Diese Funktion funktioniert problemlos wenn Sie die Zielversion unter "Datei - Formulareigenschaften... - Standart" auf 9.0 oder höher einstellen. Siehe Beispieldatei.
Gruß,
Walde
Man kann auch Teilformulare auf "schreibgeschützt" setzen. Diese Funktion funktioniert problemlos wenn Sie die Zielversion unter "Datei - Formulareigenschaften... - Standart" auf 9.0 oder höher einstellen. Siehe Beispieldatei.
Gruß,
Walde
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Felder durch Klick auf Button in schreibgeschützt umwandeln
Hallo Walde
Ich habe leider nur V8. Aber mit ein wenig probieren hab ich es hinbekommen.
Danke für den Anstoss
Gruss
Hermann
Ich habe leider nur V8. Aber mit ein wenig probieren hab ich es hinbekommen.
Danke für den Anstoss
Code: Alles auswählen
for(var i = 0; i < xfa.host.numPages; i++)
{
var oFields = xfa.layout.pageContent(i, "field");
var nodesLength = oFields.length;
for(var j = 0; j < nodesLength; j++)
{
var oItem = oFields.item(j);
if(oItem.parent.name != "keine_pruefung")
{
for(var i = 0; i < xfa.host.numPages; i++)
{
oItem.access = "protected";
}
}
}
}
Hermann
Felder durch Klick auf Button in schreibgeschützt umwandeln
So ganz habe ich nun nicht verstanden, weshalb man an dieser Stelle so einen langen Code benötigt, wenn es auch mit "Teilform1.access = "protected";" funktioniert. Okay, noch die fünf Zeilen für Abfrage, ob man das wirklich will, zusätzlich. Aber was macht denn dieses ellenlange Programm anders?Julischka hat geschrieben:Hallo Jonny,
In der unsichtbaren Schaltfläche ist ein Skript im Click event hinterlegt:
var nButton = app.alert({
cMsg: "Möchten Sie wirklich alle Felder unwiederruflich sperren? nnFortfahren?",
cTitle: "Assure HSC",
nIcon: 1, nType: 2
});
if ( nButton == 4 )
{
...
}
Noch eine Frage:
Ich habe, auf der selben Seite wie die Schaltfläche 'Sperren', noch eine Schaltfläche 'Drucken', welche auch nach dem Sperren noch funktionieren soll.
Nun habe ich schon die Schaltfläche Drucken in ein Teilformular gepackt und spreche auch dieses Teilformular beim sperren gar nicht an und dennoch wird es mit gesperrt.
Ich vermute mal, dass es daran liegt, dass 'Drucken' mit in dem zu sperrenden Teilformular liegt. Räumlich gesehen will und kann ich dies nicht ändern. Wenn ich 'Drucken' jedoch in der Hierarchie-Ansicht aus dem zu sperrenden Teilformular herausziehe, ändert sich auch die räumliche Anordnung.
Nun habe ich mir gedacht, anschließend das Teilformular 'Drucken' wieder freizuschalten, aber dann funktioniert das Sperren gar nicht mehr.
Code: Alles auswählen
var nButton = app.alert({
cMsg: "Möchten Sie wirklich alle Felder unwiderruflich sperren? \n\nHinweis: Die Sperre wird erst dauerhaft wirksam, \n nachdem das Formular abgespeichert wurde.",
cTitle: "Eingabefelder sperren?",
nIcon: 2, nType: 2
});
if ( nButton == 4 )
{
Seite1_Teilformular.access = "protected";
Seite2_Teilformular.access = "protected";
Seite2_Teilformular.Drucken-Teilformular.access = "open";
}
Felder durch Klick auf Button in schreibgeschützt umwandeln
Hallo merlin80,
Wenn ein Teilformular gesperrt wird, so werden alle Objekte, die es enthält auch gesperrt.
Es gibt hier mehrere lange Skripte. Manche dienen dazu mehr flexibilitä in das Skript zu bringen, besonders wenn es um mehrere Seiten lange Formulare mit pro Seite mehreren Teilformularen geht oder um eine Variable Sperrung von Teilformularen, die nicht immer gleich ist ... . Andere Skripte sind notwendig, weil noch nicht alle Benutzer auf die Acrobat / Reader Version >= 9.0 umgestiegen sind. Teilformulare sperren funktioniert erst ab Acrobat / Reader 9.0.
In Ihrem Skript erkenne ich, dass Seite2_Teilformular gesperrt wird, das Drucken-Teilformular sich aber in Seite2_Teilformular befindet und somit auch gesperrt wird. Sie sollten das Drucken-Teilformular in ein Teilformular auf der gleichen Hierarchieebene verschieben, wie Seite2_Teilformular.
Gruß,
Walde
Wenn ein Teilformular gesperrt wird, so werden alle Objekte, die es enthält auch gesperrt.
Es gibt hier mehrere lange Skripte. Manche dienen dazu mehr flexibilitä in das Skript zu bringen, besonders wenn es um mehrere Seiten lange Formulare mit pro Seite mehreren Teilformularen geht oder um eine Variable Sperrung von Teilformularen, die nicht immer gleich ist ... . Andere Skripte sind notwendig, weil noch nicht alle Benutzer auf die Acrobat / Reader Version >= 9.0 umgestiegen sind. Teilformulare sperren funktioniert erst ab Acrobat / Reader 9.0.
In Ihrem Skript erkenne ich, dass Seite2_Teilformular gesperrt wird, das Drucken-Teilformular sich aber in Seite2_Teilformular befindet und somit auch gesperrt wird. Sie sollten das Drucken-Teilformular in ein Teilformular auf der gleichen Hierarchieebene verschieben, wie Seite2_Teilformular.
Gruß,
Walde
Felder durch Klick auf Button in schreibgeschützt umwandeln
Wie schon erwähnt funktioniert das leider nicht.walde hat geschrieben:... Sie sollten das Drucken-Teilformular in ein Teilformular auf der gleichen Hierarchieebene verschieben, wie Seite2_Teilformular...
Sowie ich das 'Drucken-Teilformular" in der Hierarchie-Ansicht in ein neues Teilformular verschiebe ändert sich auch die räumliche Anordnung innerhalb meines Dokumentes.
Bisher habe ich keine Möglichkeit gefunden, dies zu umgehen.