Acronaut Diskussions Forum Home

Freies User Forum für

ADOBE® ACROBAT®

Acronaut Diskussions Forum > Adobe Lifecycle Designer > Mustervorlagen & Tutorials > Felder durch Klick auf Button in schreibgeschützt umwandeln
Navigation
Nicht angemeldet

Login | Registrieren 

  

Suche

Erweiterte Suche

Newsletter

Mitgliederliste

Kalender

Moderatoren/Partner

Hilfe

Banner

Kontakt/Impressum
Latest News

22.11.2010 17:00-18:00 h

 

Adobe eSeminar: Das neue 3D PDF Plugin für Adobe Acrobat X von Tetra4D

------------------------------

29.06.2010

 

TCS-Day in Nürnberg am 14.07.10 - Experten beantworten Fragen rund um das Thema techische Dokumentation

------------------------------

26.05.2010

 

Tech Soft 3D übernimmt Teile der 3D-Technologie von Adobe

------------------------------

26.05.2010

 

3D-X-tension (ehem. acronaut 3D toolbox) für den Adobe Acrobat endlich fertig

 

 
Felder durch Klick auf Button in schreibgeschützt umwandeln
 Moderiert von: WebZopp, Gentleman, FileAffairs, acronaut Produkt: Adobe LiveCycle Designer V9  

Neue Diskussion

Antworten

Drucken
VerfasserBericht
Julischka
Member
 

Eintragen seit: 26 Sep 2009
Herkunft: Deutschland
Berichte: 214
Status:  Offline
 Geschrieben: 16 Okt 2009 19:48

Text übernehmen

Antworten
.

Anlage: Felder auf Schreibschutz setzen.pdf (418 Mal aufgenommen)

Jonny252
Member
 

Eintragen seit: 2 Dez 2009
Herkunft:  
Berichte: 21
Status:  Offline
 Geschrieben: 8 Dez 2009 14:01

Text übernehmen

Antworten
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.

Julischka
Member
 

Eintragen seit: 26 Sep 2009
Herkunft: Deutschland
Berichte: 214
Status:  Offline
 Geschrieben: 8 Dez 2009 17:17

Text übernehmen

Antworten
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

EasyPerte
Member
 

Eintragen seit: 21 Apr 2010
Herkunft:  
Berichte: 22
Status:  Offline
 Geschrieben: 26 Apr 2010 07:23

Text übernehmen

Antworten
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

 

 

dreamer
Member
 

Eintragen seit: 9 Aug 2007
Herkunft: Schweiz
Berichte: 99
Status:  Offline
 Geschrieben: 20 Mai 2010 13:38

Text übernehmen

Antworten
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

walde
Member
 

Eintragen seit: 1 Mai 2008
Herkunft: Deutschland
Berichte: 613
Status:  Offline
 Geschrieben: 20 Mai 2010 20:56

Text übernehmen

Antworten
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

Anlage: Test Teilformular sperren.pdf (173 Mal aufgenommen)

dreamer
Member
 

Eintragen seit: 9 Aug 2007
Herkunft: Schweiz
Berichte: 99
Status:  Offline
 Geschrieben: 21 Mai 2010 04:19

Text übernehmen

Antworten
Hallo Walde

Ich habe leider nur V8. Aber mit ein wenig probieren hab ich es hinbekommen.

Danke für den Anstoss
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";
         }
      }
   }
}

Gruss
Hermann

Letzte Änderung am 21 Mai 2010 07:33 von dreamer

merlin80
Member
 

Eintragen seit: 22 Aug 2010
Herkunft: Halle(Saale), Deutschland
Berichte: 37
Status:  Offline
 Geschrieben: 10 Sep 2010 06:02

Text übernehmen

Antworten
Julischka schrieb: 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 )
{
...
}


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?

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.

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";
}

walde
Member
 

Eintragen seit: 1 Mai 2008
Herkunft: Deutschland
Berichte: 613
Status:  Offline
 Geschrieben: 10 Sep 2010 07:51

Text übernehmen

Antworten
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

Letzte Änderung am 10 Sep 2010 13:10 von walde

merlin80
Member
 

Eintragen seit: 22 Aug 2010
Herkunft: Halle(Saale), Deutschland
Berichte: 37
Status:  Offline
 Geschrieben: 13 Sep 2010 04:45

Text übernehmen

Antworten
walde schrieb: ... Sie sollten das Drucken-Teilformular in ein Teilformular auf der gleichen Hierarchieebene verschieben, wie Seite2_Teilformular...
Wie schon erwähnt funktioniert das leider nicht.
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.

nele_sonntag
Super Moderator
 

Eintragen seit: 3 Mai 2009
Herkunft: Frankfurt, Deutschland
Berichte: 1362
Status:  Offline
 Geschrieben: 13 Sep 2010 08:15

Text übernehmen

Antworten
Hallo merlin80,

wenn Du Dein Dokument so angelegt hast, wie Du sagst, sollte das ohne Problem so gehen, wie es walde beschrieben hat.

Vlt. solltest Du es mal hochladen.

LG Mandy

Aida
Member
 

Eintragen seit: 16 Okt 2010
Herkunft:  
Berichte: 1
Status:  Offline
 Geschrieben: 21 Okt 2010 07:54

Text übernehmen

Antworten
Hallo zusammen,

ich bin recht neu hier und mache meine ersten Schritte bei der Formularerstellung.

Ich habe mal den vorgenannten Button in mein Formular eingefügt, das PDF dann als dyn. XML Formular abgespeichert. Mit Acrobat habe ich dann die erweitereten Funktionen für dieses Dokuemnt freigeschalter damit mann es speichern kann.

Wenn ich jetzt dieses Dokument öffne, Inhalt eingebe und die zellen sperre ,über den Button, sieht das erstmal alles nicht megr veränderbar aus. wenn ich jetzt heregehe und eine Kopie von diesem PDF abspeichere und anschl. mit dem Reader wieder öffne sind die gesperrten Felder wieder Editierbar.

Kann mir jemand sagen was ich hier verkehrt mache?:(

Danke

AIDA

nele_sonntag
Super Moderator
 

Eintragen seit: 3 Mai 2009
Herkunft: Frankfurt, Deutschland
Berichte: 1362
Status:  Offline
 Geschrieben: 22 Okt 2010 10:32

Text übernehmen

Antworten
Hallo AIDA,
lade doch mal Dein PDF hoch, dann kann man direkt schauen.
LG Mandy

sevenup_666
Member
 

Eintragen seit: 17 Feb 2011
Herkunft:  
Berichte: 12
Status:  Offline
 Geschrieben: 14 Mar 2011 13:59

Text übernehmen

Antworten
Gibt es eine Möglichkeit den Protect mit einen anderen Button und einem Passwort zu entfernen?

nele_sonntag
Super Moderator
 

Eintragen seit: 3 Mai 2009
Herkunft: Frankfurt, Deutschland
Berichte: 1362
Status:  Offline
 Geschrieben: 14 Mar 2011 18:30

Text übernehmen

Antworten
Wenn Du Dir das Skript anschaust, siehst Du den Befehl
oFields.item(nNodeCount).access = "protected";


Wenn Du nun "access" bei F1 eingibst, siehst Du dort die restlichen Parameter von access und kannst entsprechend Deinen Wünschen "protected" ersetzen.

Für eine Passwortabfrage baust Du einfach eine IF-Abfrage vor dieses Skript.
if(Passwortfeld.rawValue == "Passwort")
{
Skript ausführen;
}else{
xfa.host.messageBox("Passwort falsch", "Tipp",1,0);
Passwortfeld.rawValue = "";
}


LG Mandy

Anlage: access.jpg (396 Mal aufgenommen)


 Uhrzeit 18:01
Seite:    1  2  3  Nächste Seite Letzte Seite  





Powered by WowBB 1.7 - Copyright © 2003-2006 Aycan Gulez
Seite erstellt in 0.3030 Sekunden (68% DB + 32% PHP). 19 verarbeitete Abfragen.