Acronaut Diskussions Forum Home

Freies User Forum für

ADOBE® ACROBAT®

Navigation
Nicht angemeldet

Login | Registrieren 

  

Suche

Erweiterte Suche

Newsletter

Mitgliederliste

Kalender

Moderatoren/Partner

Hilfe

Banner

Kontakt/Impressum
 
Stundennachweis Rechner
 Moderiert von: WebZopp, Gentleman, FileAffairs, acronaut Produkt: Adobe LiveCycle Designer V8  

Neue Diskussion

Antworten

Drucken
VerfasserBericht
armine
Administrator
 

Eintragen seit: 15 Mai 2009
Herkunft:  
Berichte: 2185
Status:  Offline
 Geschrieben: 23 Jul 2012 16:29

Text übernehmen

Antworten
Hallo Peerli,

vielleicht ist mein Ansatz aufgrund seiner Schlichtheit leichter zu durchschauen?
Die durch die interne binäre Rechnerei verursachte Ungenauigkeit habe ich hoffentlich durch runden an der rechten Stelle unterbunden.

Du kannst für beide Zeiten einen Gültigkeitsbereich festlegen und auch die kleinstmögliche Diff. in Minuten.

vg armine

Anlage: Stundenrechner.pdf (89 Mal aufgenommen)

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 23 Jul 2012 16:58

Text übernehmen

Antworten
In danke euch beiden für eure Mühe. Bin Lieder gerade unterwegs und schreibe mit meinem iPad. Dadurch kann ich eure Dateien nicht öffnen, da die Apps, die drauf habe, nichts mit euren Beispielen anfangen kann, geschweige den Script-Code lesen.
Zu Hause werde ich mich sofort hinsetzen und drüber stürzen. Im jeden Fall erst einmal herzlich Dank.

Liebe Grüsse
Peerli

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 23 Jul 2012 19:06

Text übernehmen

Antworten
Also Jungs, bin gerade wieder daheim und gleich wie versprochen, eure Scripte ausprobiert und angeschaut.

armine schrieb:
Hallo Peerli,

vielleicht ist mein Ansatz aufgrund seiner Schlichtheit leichter zu durchschauen?
Die durch die interne binäre Rechnerei verursachte Ungenauigkeit habe ich hoffentlich durch runden an der rechten Stelle unterbunden.

Du kannst für beide Zeiten einen Gültigkeitsbereich festlegen und auch die kleinstmögliche Diff. in Minuten.

vg armine

Hallo Armin.

Wenn ich bei Zeit 1 z.B. 20:00 eingebe, bekomme ich die Fehlermeldung, dass ich einen gültigen Wert zwischen 00:00 und 19:00 Uhr eingeben soll. Wenn ich aber 19:00 eingebe und bei Zeit 2 5:00, bekomme ich die Fehlermeldung, der Wert sollte zwischen 19:30 und 24:00 Uhr sein. Ich konnte aber in deinem Script nicht erkennen, dass der Wert eingegrenzt wurde. t_min 00:00 t_max 24:00?
Woran kann das liegen?



Der Schlüssel zum Erfolg ist die Funktion Num2Time().
Allerdings gibt es da auch ein kleines Problemchen mit der Ungenauigkeit beim rechnen...

Ich habe aber gerade keine Zeit dem auf den Grund zugehen. Im großen und ganzen passt es erstmal. :-)

Hallo yuc2me.
Die Genauigkeit ist für meine Zwecke gerade wichtig, weil ich Arbeitszeiten habe, die z.B. so aussehen:
Dienstbeginn: 20:32
Dienstende: 6:21
Dienstzeit: 9:49
Pause: 0:30
Arbeitszeit: 9:19
Ist komisch...ist auch so ;-)

Nun habe ich mir ein wenig Gedanken darüber gemacht und herumgebastelt und bin zu folgender Rechnung gekommen:
Nehme ich gleich einmal oberes Beispiel...

Die Dienstzeit wäre 9:49
Wenn ich die Stunden und Minuten trenne, die Stunden bei 9 belasse und nur die Minuten (0,49 / 0,6) durch 0,6 teile, bekomme ich 0,82 (0,81666) heraus. Wenn ich beide mit einander addiere, ist der Wert (Dezimal) 9,82.
Mit diesem Wert kann ich rechnen.
Jetzt rechne ich die Pause noch hinzu bzw. ab (30/60=0,5), sind es 9,32.
Wenn ich jetzt die Nachkommastelle wieder mal 0,6 (mal 60/100) nehme, komme ich auf 0,192 (ich glaube man rundet mit Math.floor) gerundet auf 0,19 plus die 9 Std sind 9:19.

Habe ich was vergessen?
Die Rechnung ist schon verständlich, aber wie ich dies in einem Script unterbringe, weiss ich leider nicht.
Vielleicht du?

Gruss
Peerli

armine
Administrator
 

Eintragen seit: 15 Mai 2009
Herkunft:  
Berichte: 2185
Status:  Offline
 Geschrieben: 23 Jul 2012 19:43

Text übernehmen

Antworten
Hallo Peerli,

du hast nur kurz ins Skript geschaut und die Übergabeparameter nicht beachtet. Die habe ich nun auf "00:00" bzw. "24:00" gesetzt und den Vergleich der beiden Zeiten auskommentiert.
Du kannst nun in beiden Feldern eine beliebige Uhrzeit eintragen. Berechnet wird die Differenz. Wenn die zweite Uhrzeit keiner als die erste ist, wird unterstellt, dass diese vom Vortag ist.

Klappt es nun?

vg armine

Anlage: Stundenrechner24.pdf (80 Mal aufgenommen)

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 23 Jul 2012 20:05

Text übernehmen

Antworten
armine schrieb:
Hallo Peerli,

du hast nur kurz ins Skript geschaut und die Übergabeparameter nicht beachtet. Die habe ich nun auf "00:00" bzw. "24:00" gesetzt und den Vergleich der beiden Zeiten auskommentiert.
Du kannst nun in beiden Feldern eine beliebige Uhrzeit eintragen. Berechnet wird die Differenz. Wenn die zweite Uhrzeit keiner als die erste ist, wird unterstellt, dass diese vom Vortag ist.

Klappt es nun?

vg armine

Das kommt davon, wenn man alles zu schnell macht.
Bestens Armin, Vielen Dank!!!!!
Wenn ich jetzt noch die Pause hinzufügen möchte (z.B mit einer Optionsgruppe, wo die Werte "keine", "30 min" und "45 min" sind), wo schreibe ich dann rein?

Gruss
Peer

armine
Administrator
 

Eintragen seit: 15 Mai 2009
Herkunft:  
Berichte: 2185
Status:  Offline
 Geschrieben: 24 Jul 2012 07:02

Text übernehmen

Antworten
Hallo Peer,

statt einer Optionsgruppe würde ich die zulässigen Werte in eine DDL schreiben und sicher stellen, dass eine Arbeitszeit nur errechnet wird, wenn alle relevanten Felder ausgefüllt sind. Dazu gehört nach meiner Auffassung auch ein Datum, am Besten mit angezeigtem Wochentag.
Die zuläßigen Eingabewerte sind im Augenblick vom 1. des Vormonats bis heute. Das kannst du aber mit den Übergabeparametern ändern.

Nun hoffe ich, dass ich nicht "zu schnell" war und nichts übersehen habe.

vg armine

P.S.: in einem anderen Thred suchst du eine Möglichkeit, dass PDF "flat" zu speichern.
Nun habe ich noch einen Button eingesetzt, der das möglich machen soll. Das Speichern abbrechen ist aber im Moment noch fatal.

Anlage: Stundenrechner2.pdf (78 Mal aufgenommen)

Letzte Änderung am 24 Jul 2012 08:02 von armine

yuc2me
Member
 

Eintragen seit: 19 Jan 2010
Herkunft:  
Berichte: 201
Status:  Offline
 Geschrieben: 24 Jul 2012 08:50

Text übernehmen

Antworten
Hallöchen!

Hier gings ja ab. Hab erst heute morgen die Systemmail bekommen...
Hat sich das Problem jetzt geklärt?!

@armine
Dein Script... :shock::)
Ich habe eine Weile gebraucht, bis ich durchgestiegen bin. Das Error-Handling find ich ganz gut, aber ich glaube nach einer Weile würde das piepen und Alert-wegklicken doch bestimmt nerven? Ich handhabe das ganz gerne mit eingefärbten Textfeldhintergründen.

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 24 Jul 2012 09:23

Text übernehmen

Antworten
yuc2me schrieb:
Hallöchen!

Hier gings ja ab. Hab erst heute morgen die Systemmail bekommen...
Hat sich das Problem jetzt geklärt?


Hi.
Armin hatte eine Lösung gehabt, die nicht schlecht ist, aber deine hätte ich auch gern noch dazu.
Kannst du mit meiner Erklärung etwas anfangen und vielleicht etwas basteln, damit bei deinem Script die Genauigkeit stimmt?
Es ist ja nicht nur für mich, denn es gibt bestimmt viele hier, die es brauchen.

@alle
Woran liegt es, dass ich die Scripts auf meinem iPad mit dem aktuellen Acrobat Reader nicht benutzen kann? Ich habe auch PDF Expert gekauft, aber auch das Programm kann mit dem Script nichts anfangen.

Die besten Grüße aus Ulm
Peerli

yuc2me
Member
 

Eintragen seit: 19 Jan 2010
Herkunft:  
Berichte: 201
Status:  Offline
 Geschrieben: 24 Jul 2012 10:16

Text übernehmen

Antworten
@armine
Ich hatte vor ein paar Jahren in Excel mal ein Zeitjournal gebastelt mit allem drumrum wie Überstunden, Nachtzuschlag, Feiertage etc.
Das wird erfolgreich in einem Altenheim verwendet.
Das ganze habe ich auch schon versucht in LCD umzuschreiben... Die Zeit aber.


Ich habe jetzt mit der Zeitberechnung etwas geschummelt, es scheint aber zu funktionieren. 7199995 statt 7200000 im Berechnungsscript.

Anlage: Stundennachweis_Rechner.pdf (56 Mal aufgenommen)

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 24 Jul 2012 18:21

Text übernehmen

Antworten
Danke yuc2me.
Bin gerade unterwegs. Werde leider erst morgen an meinen PC kommen.
Dann werde ich dein Script näher anschauen.

Auch dir, Armine, einen herzlichen Dank für deine Mühe. Es ist zwar schlicht, aber sehr gut.
Aber warum kann ich dies nicht unter meinen Reader beim iPad nutzen?

Gruß
Peer

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 25 Jul 2012 09:52

Text übernehmen

Antworten
Hallo yuc2me.
Ich habe mir heute einmal deine Lösung angeschaut. Ds Ergebins ist ähnlich des amine's. Was an deinem Beispiel noch interesssant ist, sind's die Angaben der Überstunden. Aber das Feld unterhalb des Textfeldes für das Dezimalergebnis der Überstunden-Angabe ist leer, obwohl da ein Bechnungsscript drin steht. Ich bin in LiveCycle noch nicht so bewandert, damit ich das verstehe. Ich hätte gern in diesem Feld die Überstundenzeit im Zeitwert.
Wenn du dies noch hinbekommen würdest, wäre mit deinem Beipiel alles abgedeckt und jeder kann sich die besten heraus suchen.

Peerli

yuc2me
Member
 

Eintragen seit: 19 Jan 2010
Herkunft:  
Berichte: 201
Status:  Offline
 Geschrieben: 25 Jul 2012 10:56

Text übernehmen

Antworten
Das Feld war kein Datumsfeld... Script nochmal leicht geändert.

MfG yuc2me.

Anlage: Stundennachweis_Rechner.pdf (138 Mal aufgenommen)

yuc2me
Member
 

Eintragen seit: 19 Jan 2010
Herkunft:  
Berichte: 201
Status:  Offline
 Geschrieben: 25 Jul 2012 11:06

Text übernehmen

Antworten
Bezüglich der Adobe Reader App hatte ich schonmal in einem Beitrag geschrieben.
Es liegt ausschließlich an den Apps. Diese können mit den LCD PDF's so gut wie garnicht umgehen. Eine Chance hast du, wenn du es als statisches PDF speicherst, somit fallen aber weitgehend alle dynamischen Funktionen eines PDF weg.
Acrobat Formulare hingegen sollen seit neustem gehen... ist aber von mir noch nicht eingehend geprüft worden.

Ich tue mich auch immer wieder schwer mit der Umsetzung von Projekten, da viele mittlerweile mit Tablets arbeiten und die Android-App auch nicht klar kommt.

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 25 Jul 2012 11:12

Text übernehmen

Antworten
yuc2me schrieb:
Das Feld war kein Datumsfeld... Script nochmal leicht geändert.

MfG yuc2me.


Sieht sehr gut aus, aber gebe mal z.B. Start 20:00 Ende 6:02 ohne Pause ein. Bei mir kommt dann 10:01 respektive 02:01 Überstd. raus. Deine Runden oder Tricks schein nicht immer zu funktionieren. Vielleicht muss man noch mehr "beschei..."?

Peerli

Peerli
Member
 

Eintragen seit: 15 Jul 2012
Herkunft:  
Berichte: 32
Status:  Offline
 Geschrieben: 25 Jul 2012 11:40

Text übernehmen

Antworten
yuc2me schrieb:
Bezüglich der Adobe Reader App hatte ich schonmal in einem Beitrag geschrieben.
Es liegt ausschließlich an den Apps. Diese können mit den LCD PDF's so gut wie garnicht umgehen. Eine Chance hast du, wenn du es als statisches PDF speicherst, somit fallen aber weitgehend alle dynamischen Funktionen eines PDF weg.
Acrobat Formulare hingegen sollen seit neustem gehen... ist aber von mir noch nicht eingehend geprüft worden.

Ich tue mich auch immer wieder schwer mit der Umsetzung von Projekten, da viele mittlerweile mit Tablets arbeiten und die Android-App auch nicht klar kommt.

Ja, die Zukunft wird sich auf dem Tablet-Markt abspielen. Dies war auch der Grund, warum ich mich jetzt damit beschäftigen will (oder muss), denn bis jetzt habe ich immer am heimischen PC mit Excel hantiert. Aber seit neustens ist ein Tablet bei uns in aller Munde und ich wollte nicht unvorbereitet sein und mich schon einmal umsehen bzw. -hören. Da ich mangels Excel-Unterstützung auf dem Android/iOS-Markt nach Möglichkeiten gesucht habe, bin ich bei pdf gelandet.
Ich habe ein Script, dass hier von einem Mitglied angeboten wurde, dass in Acrobat eingebunden ist und gespeichert auch in meiner iPad-App funktioniert. Nur leider ist bei diesem Script keine Berechnung über 24 Uhr hinaus.
function doIt()
{
var oStartTime = document.myform.Dbg,
oEndTime = document.myform.Dende,
startTime = oStartTime.value,
endTime = oEndTime.value;

if ( startTime.replace( /^\d{1,2}:\d{1,2}$/ , "" ) )
{
oStartTime.select();
oStartTime.focus();
return true;
};

if ( endTime.replace( /^\d{1,2}:\d{1,2}$/ , "" ) )
{
oEndTime.select();
oEndTime.focus();
return true;
};


startTime = startTime.split( ":" );
startTime = startTime[ 0 ] * 60 + startTime[ 1 ] * 1;

endTime = endTime.split( ":" );
endTime = endTime[ 0 ] * 60 + endTime[ 1 ] * 1;

var diffTime = endTime - startTime;

// Hier wechsle ich den Tag, wenn StartZeit>EndZeit ist
if ( diffTime < 0)
diffTime += ( 24 * 60 );

var hours = Math.floor( diffTime / 60 );
var minutes = ( diffTime % 60 );

if ( hours < 10 )
hours = "0" + hours;

if ( minutes < 10 )
minutes = "0" + minutes;

diffTime = hours + ":" + minutes;

document.myform.ArbZ.value = diffTime;

};

zusätzlich wird im jeweiligen Feld das "Format" auf "benutzerdefiniert" gestellt und bei dem "Benutzdef. Formatierungsskript
if (getField("StartTime1").value=="") event.value = "HH:MM";

eingefügt.

Im Ergebnisfeld ist unter "Berechnung" bei "Benutzerdef. Berechnungsskript" dieser Code...
var cStartTime = this.getField("StartTime1").value;
var cEndTime = this.getField("EndTime1").value;
var cPause = this.getField("Pause").value;

if((cStartTime != "") && (cEndTime != ""))
{
var nStartTime=0, nEndTime=0;
var aStartTime = cStartTime.split(":");
nStartTime = Number(aStartTime[0]) + Number(aStartTime[1])/60;
var aEndTime = cEndTime.split(":");
nEndTime = Number(aEndTime[0]) + Number(aEndTime[1])/60;
var aPause = cPause.split(":");
nPause = Number(aPause[0]) + Number(aPause[1])/60;
var nTimeDiff = nEndTime - nStartTime - nPause;
var nHours = Math.floor(nTimeDiff );
var nMinutes = Math.floor((nTimeDiff - nHours)*60 + 0.5);
event.value = util.printf("%02d:%02d",nHours, nMinutes);
}
else
event.value = "";

den ich an meine Bedürfnisse angepasst habe. Ich habe eine Variable "Pause" hinzugefügt, die ich anhand einer Optionsgruppe ("keine", "30min", "45min") auswähle.
Wie gesagt, dies funktioniert prima mit meinen Apps (Acrobat Reader in der aktuellen Version und PDF Expert)


 Uhrzeit 01:36
Seite:  Erste Seite Vorherige Seite  1  2  3  4  Nächste Seite Letzte Seite  





Powered by WowBB 1.7 - Copyright © 2003-2006 Aycan Gulez
Seite erstellt in 0.1454 Sekunden (39% DB + 61% PHP). 23 verarbeitete Abfragen.