Suche:

Mittwoch, 29. September 2010

Adobe PDF - Java Script anwenden - Teil 2

Object's mit JavaScript zählen

Um alle Object's auf dem PDF zu zählen verwenden wir folgenden Code:

topmostSubform.Page1.nodes.length

Diese Methode gibt die zuerst ein Array mit allen Object's des PDF's zurück. Danach wird mit .length die Grösse dieses Arrays zurückgegeben. Dies entspricht der Anzahl aller Felder und Buttons auf dem PDF.

Bestimmtes Object suchen

Um ein oder mehrere Object's auf dem PDF anzusprechen wählen wir diese mit einer for-Schleife aus. In diesem Beispiel werden alle Felder die mit "SCR-" beginnen ausgewählt.

for (i=0; i < topmostSubform.Page1.nodes.length; i++)
{
var field=topmostSubform.Page1.nodes.item(i)
var fieldName=field.name
if (fieldName.substr(0,4)=="SCR-")
{
// Self generatet Code
}
}

Für jedes Feld auf dem PDF wird überprüft, ob es mit "SCR-" beginnt. Trifft dies zu, kann eine beliebige Funktion aufgerufen oder ausgeführt werden.

Dienstag, 28. September 2010

Adobe LiveCycle Designer - Vordefinierte Methoden

Hier möchte ich noch ein paar der wichtigsten vordefinierten JavaScript Methoden, im LiveCycle Designer von Adobe, vorstellen.

initialize

Wird für alle Objekte initiiert, nachdem der Formularentwurf mit Daten zusammengeführt wurde.

Mit diesem Ereignis können Sie beim Erstellen eines Objekts Aktionen ausführen, die entweder durch eine Benutzeraktion beim Ausfüllen des Formulars oder im Rahmen des Formularerstellungsprozesses verursacht werden. Beispielsweise können Sie die Einstellungen für neue Instanzen eines Teilformularobjekts steuern, welche der Benutzer dem Formular durch Klicken auf eine Schaltfläche hinzufügt.

Adobe - initialize-Ereignis

enter

Wird ausgelöst, wenn ein Feld oder Teilformular den Tastaturfokus erhält, und zwar unabhängig davon, ob dies durch eine Benutzeraktion verursacht wird (Wechsel in ein Feld per Tabulatortaste oder Mausklick) oder durch ein Skript, welches den Fokus programmatisch setzt.

Mit diesem Ereignis können Sie Hilfetext oder andere Meldungen bereitstellen, welche dem Benutzer das Ausfüllen des aktuellen Feldes oder Teilformulars erleichtern. Angenommen, in ein Feld muss ein Wert in einem bestimmten Format eingegeben werden oder beim Ausfüllen eines Feldes sind spezifische Anweisungen zu beachten. In diesem Fall können Sie mit diesem Ereignis eine Meldung einblenden, welche den Benutzer über die besonderen Anforderungen informiert.

Adobe - enter-Ereignis

exit

Wird ausgelöst, wenn das Feld oder Teilformular den Tastaturfokus verliert, und zwar unabhängig davon, ob dies durch eine Benutzeraktion verursacht wird (Wechsel in ein anderes Feld per Tabulatortaste oder Mausklick außerhalb des Feldes) oder durch ein Skript, welches den Fokus programmatisch entfernt.

Dieses Ereignis eignet sich zur Überprüfung von Felddaten, wenn der Benutzer den Fokus von einem Feld entfernt. Angenommen, in ein Feld muss ein Wert eingegeben werden. In diesem Fall können Sie mit diesem Ereignis eine Meldung bereitstellen, welche den Benutzer darauf aufmerksam macht, dass das Formular nur gesendet werden kann, wenn in dieses Feld Daten eingegeben wurden.

Adobe - exit-Ereignis

calculate

Das Ereignis calculate eignet sich zur Aktualisierung von Zahlenwerten in Feldern, weil es unmittelbar nach den meisten anderen Ereignissen initiiert wird. Beispielsweise könnten Sie in einem Bestellformular mit dem Ereignis calculate für ein Feld den Prozentwert der Umsatzsteuer anhand der Bestellkosten errechnen. Die Berechnung wird jedes Mal ausgeführt, wenn die Werte in den Formularfeldern geändert werden. Auf diese Weise wird gewährleistet, dass der für die Umsatzsteuer angezeigte Wert immer korrekt ist.

Adobe - calculate-Ereignis

validate

Wird initiiert, wenn Formularentwurf und Daten zum Formular zusammengeführt werden und wenn ein Feld den Fokus verliert, z. B. wenn ein Benutzer klickt oder die Tabulatortaste drückt, um ein Feld zu verlassen. Dieses Ereignis wird jedes Mal ausgelöst, wenn sich der Wert eines Feldes ändert. Mit Berechnungen und Skripten, die auf dem Ereignis validate platziert werden, lassen sich Überprüfungen durchführen, die spezifischeren Charakter haben als die über die Registerkarte "Wert" der Palette "Objekt" verfügbaren Überprüfungen.

Mit diesem Ereignis können Sie Objektwerte überprüfen. Es eignet sich insbesondere für Situationen, in denen Objektdaten mit bestimmten Regeln übereinstimmen müssen.

Adobe - validate-Ereignis

mouseEnter

Dieses Ereignis wird ausgelöst, wenn der Benutzer beim Ausfüllen des Formulars den Mauszeiger in den Feldbereich bewegt; dabei muss nicht notwendigerweise die Maustaste gedrückt werden.

Sie können dieses Ereignis mit dem Ereignis mouseExit kombinieren, um dem Benutzer beim Ausfüllen des Formulars visuelles Feedback zu liefern. Beispielsweise können Sie mit diesem Ereignis die Rahmen- oder Hintergrundfarbe eines Objekts ändern, damit der Benutzer beim Ausfüllen visuell erkennen kann, dass er sich zurzeit in einem bestimmten Feld befindet.

Adobe - mouseEnter-Ereignis

mouseExit

Dieses Ereignis wird ausgelöst, wenn der Benutzer beim Ausfüllen des Formulars den Mauszeiger aus dem Feld herausbewegt, auch wenn er dabei die Maustaste gedrückt hält.

Sie können dieses Ereignis mit dem Ereignis mouseEnter kombinieren, um dem Benutzer beim Ausfüllen des Formulars visuelles Feedback zu liefern.

Adobe - mouseExit-Ereignis

change

Wird ausgelöst, wenn ein Benutzer beim Ausfüllen des Formulars den Inhalt eines Feldes durch eine definierte Aktion ändert.

Dieses Ereignis eignet sich für Berechnungen oder Skripten, die ausgelöst werden müssen, wenn ein Benutzer beim Ausfüllen des Formulars den Wert eines Feldes ändert.

Adobe - change-Ereignis

mouseDown

Wird initiiert, wenn ein Benutzer beim Ausfüllen des Formulars die Maustaste drückt, während sich der Zeiger in einem Feld befindet.

Dieses Ereignis eignet sich für die Ausführung einer Aktion, nachdem ein Benutzer im Formular auf eine Schaltfläche geklickt oder ein Optionsfeld bzw. ein Kontrollkästchen aktiviert hat.

Adobe - mouseDown-Ereignis

click

Wird initiiert, wenn innerhalb des Bereichs ein Mausklick erfolgt. Wenn ein click-Ereignis für ein Text- oder numerisches Feld ausgelöst wird, werden Berechnungen oder Skripten sofort ausgeführt. Der Wert des Feldes wird aber erst dann aufgrund von Berechnungen und Skripten geändert, wenn das Feld den Fokus verliert.

Dieses Ereignis eignet sich für die Ausführung einer Aktion, nachdem ein Benutzer im Formular auf eine Schaltfläche geklickt oder ein Optionsfeld bzw. ein Kontrollkästchen aktiviert hat. Beispielsweise können Sie mit dem Ereignis click für ein Kontrollkästchen ein Formularfeld ein- und ausblenden.

Adobe - click-Ereignis

docClose

Wird ganz am Ende der Verarbeitung eines Formulars ausgeführt, sofern sämtliche Formularüberprüfungen fehlerfrei durchgeführt wurden.

Dieses Ereignis wird erst spät ausgelöst und führt keine Änderungen am gespeicherten Formular durch. Es soll vielmehr die Möglichkeit bieten, einen Beenden-Status oder eine Fertig-Meldung zu erzeugen.

Adobe - docClose-Ereignis

Weiter Methoden finden Sie hier:

Adobe - Ereignisse

Samstag, 25. September 2010

Samsung Galaxy S i9000 - Codes

Ich habe beim Surfen noch ein paar interessante Codes für das Samsung Galaxy S i9000 gefunden.

Codes

Info und Handy Einstellungen

*#*#INFO#*#* Zeigt Informationen an

Kamera Firmware

*#*#34971539#*#* Zeigt Kamera Firmware an

Betrieb Tests

*#*#0283#*#* Packet Loopback
*#*#0*#*#* "LCD TEST": rot/grün/blau screen, Rufton, Vibration, Abblendung, Megacam, Sensor, Touch, Schlafmodus
*#*#0673#*#* or *#*#0289#*#* Rufton Test
*#*#0842#*#* Vibration + BackLight Test
*#*#2663#*#* Anzeige der Touch Screen Version
*#*#2664#*#* Touch Screen Test (nicht äquivalent zum LCD Test)
*#*#0588#*#* Umgebungssensor Test
*#*#3264#*#* Anzeige der RAM Version

WLAN Test

*#*#232339#*#* oder *#*#526#*#* oder *#*#528#*#* Startet WLAN Test

Anzeige der WiFi MAC Addresse

*#*#232338#*#* Anzeige der WiFi MAC Addresse

GPS

*#*#1472365#*#* GPS Testprogramm
*#*#1575#*#* Ein anderes GPS Testprogramm. Zeigt SV Info und Positions Informationen wenn man ein GPS-Ortssignal erhalten hat.

Bluetooth

*#*#232331#*#* Bluetooth RF Test Modus
*#*#232337#*#* Zeige Bluetooth Device Addresse

Service Modus

*#*#197328640#*#* Service Modus

Das Gerät wechselt in den Service Modus. Um den Servicemodus zu beenden einfach auf die Menu Taste drücken. Für diesen Modus gibt es folgende Codes:

*#*#0011#*#* Anzeige der GSM Informationen
*#*#0228#*#* Zeige Antenne und ADC test. Drücke die Menutaste dann wähle "Back" für weiter Optionen: Basic, MM, RR, GPRS, SIM Information, GSM Neighbour Cell, Handover, Phone control
*#*#0782#*#* RTCTimeRead
*#*#9090#*#* UART Diag
*#*#7284#*#* UART Diag
*#*#4238378#*#* Einstellungen
*#*#2263#*#* Setze GSM/UMTS Frequenzbereich
*#*#2264#*#* WCDMA Einstellungen
*#*#6984125*#*#* auto Antwort
*#*#2886#*#* auto Antwort
*#*#2767*2878#*#* NV zurücksetzten & rebuild (Erfordert Neustart)
*#*#147852#*#* or *#*#369852#*#* or *#*#1478963#*#* Teste Apn Einstellungen
*#*#02280#*#* Batterie Status auslesen
*#*#03#*#* Zeige Nand Flash Unique Nummer
*#*#0589#*#* Zeige Lichtsensor Informationen
*#*#745#*#* Ril Log. Man kann das Log anschauen oder auf die SD Karte speichern

Ausschalten

*#*#7594#*#* Shutdown

Quelle:

android-dls.com - Codes

Freitag, 24. September 2010

AD Gruppen auslesen

Einleitung

In diesem Artikel geht es darum, mit einem C# Programm eine ActiveDirectory - Gruppen abfrage zu realisieren.
Ich möchte herausfinden, ob dem User eine bestimmte Gruppe zugewiesen ist, um danach je nach Ergebniss eine andere Aktion ausführen zu können.

Vorwissen

Wenn ein User im ActiveDirectory einer Gruppe zugewiesen wird, kann man sich diese zum Beispiel in der Computerverwaltung ansehen. Unter User und Gruppen wird diese Gruppe dann eingetragen. In dieser Anleitung machen wir einen Loop über alle vorhandenen Gruppen und warten, bis die gesuchte Gruppe kommt.

Funktion zum Auslesen der AD Gruppe

public Boolean getGroupState ()
{

Boolean groupState = false;

foreach (System.Security.Principal.IdentityReference group in System.Security.Principal.WindowsIdentity.GetCurrent().Groups)
{
if ((group.Translate(typeof(System.Security.Principal.NTAccount))).ToString() == "Domäne\\AD-Group")
{
groupState = true;
break;
}
else
{
groupState = false;
}

return groupState;
}
Der Variable groupState wird mitgegeben, ob die gesuchte Gruppe vorhanden ist. Mit der foreach Schlaufe wird das ganze Gruppenverzeichnis nach dem mitgegebenen Namen durchsucht. Sobald der Name gefunden wurde, wird die Schleife abgebrochen und der Wert von groupState auf true gesetzt.

Mittwoch, 8. September 2010

Die Java Properties Datei

Die Properties Datei

Die Java Properties Dateien sind normale Textdateien, die als einfaches Konfigurationswerkzeug dienen. Diese Dateien können unter einem beliebigen Namen abgelegt werden. Die Dateiendung lautet .properties.

Beispiel

# Kommentar zur Datei
! Ebenfalls Kommentar

Portnummer 3128
hostname = beispielhost
sprache:de

langerText Dieser Text \
ist länger als eine Zeile

Es gibt 3 Möglichkeiten um Schlüssel, Werte und normale Werte einzugeben.

  • Mit Leerzeichen, wobei die Menge der Leerzeichen keine Rolle spielt. Wie im obigen Beispiel der Schlüssel "Portnummer" sowie der Wert "3128".
  • Mit Gleichheitszeichen, die Anzahl Leerzeichen ist gleichgültig. So wie im obigen Beispiel "hostname" und "beispielhost"
  • Mit einem Doppelpunkt, auch hier spielt die Anzahl Leerzeichen keine Rolle

Um den Text auf der nächsten Linie fortzuführen, kann man einen Zeilenumbruch mit folgendem Zeichen realisieren: \

Aufruf im Java Code

Der folgende Code ruft das Properties File "beispiel.properties" auf. Danach wird aus diesem File der Wert "hostname" ausgelesen.

String propertyFile = "beispiel.properties";

Properties prop = new Properties();

try
{
prop.load(new FileInputStream(propertyFile));
// Properties File laden
}
catch (IOException e)
{
// Wenn das laden fehlgeschlagen ist
}

String hostname = prop.getProperty("hostname");
Wikipedia - Java Properties Datei