Neues FreeOn: FormelAct

kostenlose Erweiterungen für ACT!

Moderatoren: Schlesselmann, Amrou, mtimmermann, Robert Schellmann, Thomas Benn

Katrin Alvermann
Beiträge: 30
Registriert: Freitag 5. März 2004, 16:11
Wohnort: Hamburg

Neues FreeOn: FormelAct

Beitrag von Katrin Alvermann »

Hallo allerseits!

Herr Schellmann hat für die ACT!-Nutzer mal wieder ein schönes FreeOn gebastelt. :P

Hier die Kurzbeschreibung von dem Programm FormelAct:

Das Programm kann die Inhalte verschiedener Felder zusammenrechnen oder aneinanderfügen.

Die benötigten Informationen können dabei entweder als Parameter hinter der Befehlszeile angegeben werden oder separat in einer Datei abgespeichert sein, die dann wiederum als Parameter angegeben wird.
Der Aufruf mit Datei sieht dann so aus:

Code: Alles auswählen

C:\Pfad\FormelACT.vbs C:\Pfad\BeispielFormeln.txt
Anstelle der Datei steht bei direktem Aufruf ein VB-Skript-Befehl.

Um z.B. drei (Preis-)Felder zusammenzuaddieren und dann einen prozentualen Rabatt abzuziehen muss der Befehl wie folgt aussehen:

Code: Alles auswählen

%54=(%50+%51+%52) 
%55=%54-%54*%53/100
Die Zahl entspricht der Feld-ID, die sich über FeldInfo einfach feststellen lässt.
Das +, * und / lässt sich natürlich durch beliebige mathematische Funktionen austauschen.

Bild

Im aktuellen Beispiel werden die Felder Preis 1-3 (Feld-ID 50-52) zusammenaddiert und in das Feld Zwischensumme (54) geschrieben.
Im zweiten Schritt wird der prozentuale Rabatt (53) mit der Zwischensumme (54) multipliziert, von der Zwischensumme abgezogen und das Ergebnis in das Feld Summe (55) geschrieben.

Bild

Textmäßig kann man Felder wie folgt zusammenfassen:
Es soll eine Kurzbeschreibung beim Kontakt erstellt werden, die sich zusammensetzt aus:
Firmenname – Nachname des Kontaktes – Ort

Der benötigte Befehl:

Code: Alles auswählen

%56="%25"+"_-_"+"%79"+"_-_"+"%30"
Feld 56 –Kurzbeschreibung, soll gefüllt werden mit dem Inhalt von Feld 25 (Kontakt), dem String „ – „ (die _ in der Formel sind in der Befehlszeile notwendig und werden durch Leerzeichen ersetzt), dem Inhalt des Feldes 79 (Nachname des Kontaktes), wieder dem String „ – „ und dem Inhalt des Feldes 30 (Stadt).
Das Ergebnis sieht dann so aus:

Bild

Runtergeladen werden kann FormelAct direkt hier:https://www.melville-schellmann.de/actforum/download/FormelACT.vbs

Viel Spaß damit!

Gruß,
Katrin Alvermann
Zuletzt geändert von Katrin Alvermann am Freitag 23. Juli 2004, 11:25, insgesamt 1-mal geändert.
Ingrid Weigoldt
Beiträge: 3027
Registriert: Donnerstag 24. April 2003, 02:00
Wohnort: Viernheim

Superspitzenklasse!

Beitrag von Ingrid Weigoldt »

Klappt wunderbar und ist vielseitig einsetzbar.
Danke!

Ingrid Weigoldt
Gast

Berechnung in Abhängigkeit von anderem feld

Beitrag von Gast »

Kann man mit dem Tool auch folgende Berechnungen durchführen?

Eine bestimmte Formel soll je nach Abhängigkeit einer Auswahl eines Dropdownfeldes ausgeführt werden?
Ingrid Weigoldt
Beiträge: 3027
Registriert: Donnerstag 24. April 2003, 02:00
Wohnort: Viernheim

Na klar!

Beitrag von Ingrid Weigoldt »

Wollte das eben selbst wissen, habe es ausprobiert.
Klappt bestens! Man braucht dazu eine ganz normale vb-IF-Klausel, that's all.

Schönes Wochenende
Ingrid Weigoldt
Gast

Beitrag von Gast »

hab sowas noch nie gemacht. Wo mache ich sowas und wie?
Gibts ein Muster?
Ingrid Weigoldt
Beiträge: 3027
Registriert: Donnerstag 24. April 2003, 02:00
Wohnort: Viernheim

Keine Wenn-Abfragen!

Beitrag von Ingrid Weigoldt »

An den anonymen Gast und andere potentielle Anwender von Formel-ACT:

mit meiner Begeisterung über die IF... war ich zu vorschnell.
Funktioniert tatsächlich nicht, da FormelACT nur einzeilige Programmsequenzen unterstützt, IF....THEN....ELSE....ENDIF aber mehrzeilig sein muß.
Und IIF wird leider in VBScript nicht unterstützt.

:-? Ingrid Weigoldt
Gast

Beitrag von Gast »

schade.
Andreas Chall
Beiträge: 91
Registriert: Freitag 4. Mai 2001, 02:00
Kontaktdaten:

formelact.vbs

Beitrag von Andreas Chall »

Hallo,
gibt es irgendwo eine step by step anleitung? ich habe kein blassen schimmer, wo oder wie ich das script einsetzen kann. ich habe versucht es bei der felddefinition "auslöser, beim feldeintritt starten" auszulösen. leider passiert nix.
würde mich über antworten freuen.
:roll: Andreas
Ingrid Weigoldt
Beiträge: 3027
Registriert: Donnerstag 24. April 2003, 02:00
Wohnort: Viernheim

Beitrag von Ingrid Weigoldt »

Hallo Herr Chall,

am einfachsten, Sie gehen den von Katrin Alvermann beschriebenen Weg einer externen Datei. Die können Sie dann immer leicht editieren.
Ansonsten ist der Auslöser nicht schlecht.
Dorthinein muß dann lediglich der Aufruf des Programmes selbst und nach einer Leertaste der Name der Datei (eben, wie beschrieben).
Funktioniert!

Schönes Wochenende noch
Ingrid Weigoldt
Schöne Grüße aus Viernheim
Ingrid Weigoldt
Robert Schellmann
Beiträge: 1675
Registriert: Samstag 14. April 2001, 02:00
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Robert Schellmann »

Ein Beispiel:

- Man erstellt einen neuen Ordner: z.B.: "C:\FormelACT"
- Man speichert in diesen Ordner das Programm "FormelACT.vbs"
- Man erstellt in diesem Ordner eine neues Textdokument: z.B.: "Formeln.txt"
- Man öffnet die Textdatei (rechte Maustaste "Bearbeiten") mit dem Editor.
- Man schreibt eine Formel: %52="%51"+"-"+"%50"
- Man speichert die Änderungen in die Textdatei.
- Man schließt den Editor
- Man startet ACT!
- Man ruft den Menüpunkt "Fenster Kontakte anpassen..." im Menü "Extras" auf
- Man wechselt auf die Registerkarte "Benutzerdefinierte Befehle"
- Man legt einen neuen benutzerdefinierten Befehl mit der Schaltfläche "Neu" an.
- Man klickt auf "Durchsuchen"
- Man wechselt unter "Suchen in" in den Ordner "C:\FormelACT"
- Man wählt unter Dateityp "Alle Dateien (*.*)" aus.
- Man wählt die Programmdatei "FormelACT.vbs" aus und klickt auf "Öffnen"
- Man geht mit dem Cursor unter "Befehlszeile" ganz ans Ende
- Man gibt ein Leerzeichen und folgenden Pfad ein "C:\FormelACT\Formeln.txt" ein, so dass insgesamt folgender Text unter Befehlszeile steht: "C:\FormelACT\FormelACT.vbs C:\FormelACT\Formeln.txt"
- Man klickt auf "Übernehmen" und auf "Nein" wenn man keine Beschreibung eingegben will
- Ein neuer Befehl erscheint in der Liste "Benutzerdefinierte Befehle"
- Man wechselt auf die Registerkarte "Symbolleisten"
- Unter "Kategorien" wählt man den Eintrag "Benutzerdefinierter Befehl"
- Aus der Liste "Befehle" zieht man den neuen "Befehl" mit gedrückter linken Maustaste auf die Symbolleiste.
- Man schließt das Fenster "ACT! Anpassen..." mit "OK"

Jetzt hat man einen neuen Befehl in der Symbolleiste. Bei einem Klick darauf wird FormelACT gestartet. Es verabeitet die eingegebenen Formeln aus der Textdatei "Formeln.txt". Durch die Formel %52="%51"+"-"+"%50" werden die Inhalte vom "Benutzerfeld 2"(%51) und "Benutzerfeld 1"(%50) mit einem Minuszeichen verkettet und in das "Benutzerfeld 3" (%52) geschrieben. Aus z.B. "abc" (Benutzerfeld1) und "def" (Benutzerfeld2) wird in das "Benutzerfeld 3" der Text "def-abc" geschrieben.

Gruß
Robert Schellmann
Bild MSControl4 - wird Ihre ACT!-Daten zum Rotieren bringen...
Andreas Chall
Beiträge: 91
Registriert: Freitag 4. Mai 2001, 02:00
Kontaktdaten:

FormelAct

Beitrag von Andreas Chall »

Hallo Frau Weigold, Hallo Herr Schellmann,
jetzt hab´ich´s.
Klappt alles wunderbar! Vielen Dank für die schnelle Antwort.
:D :D :D :D
Robert Schellmann
Beiträge: 1675
Registriert: Samstag 14. April 2001, 02:00
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Robert Schellmann »

Hallo FormelACT-Interessierte,

auf dieser Internetseite: www.devguru.com gibt es eine Übersicht über die VB-Script-Funktionen, die man in der Formel verwenden kann.

Gruß
Robert Schellmann
Bild MSControl4 - wird Ihre ACT!-Daten zum Rotieren bringen...
Andrea Oberhagemann

FormelACT

Beitrag von Andrea Oberhagemann »

Hallo , ich versuche das Addon FormelACt.vbs anzuwenden. Ich gehe nach der Schritt für Schritt Anleitung von Robert Schellmann vor. Trotzdem kommt immer die Fehlermeldung - Falscher Pfad oder Dateiname angegeben- . Was kann ich tun?
Ingrid Weigoldt
Beiträge: 3027
Registriert: Donnerstag 24. April 2003, 02:00
Wohnort: Viernheim

Beitrag von Ingrid Weigoldt »

Hallo Andrea,

die Fehlermeldung besagt, daß entweder FormelACT selbst nicht im angegebenen Pfad gefunden wurde oder die herangezogene Script-Datei (.txt) woanders steht, als angegeben.

Ein Eintrag wie:

C:\Programme\Melville-Schellmann\FormelACT\Formelact.vbs Kontakt_Land.txt

würde Erfolg haben, wenn sowohl FormelACT.vbs selbst als auch die von Ihnen bereitgestellte Datei Kontakt_Land.txt im Verzeichnis C:\Programme\Melville-Schellmann\FormelACT zu finden sind.

Wäre Kontakt_Land.txt woanders zu suchen, müßte die Pfad-Angabe dazu mit angegeben werden:

C:\Programme\Melville-Schellmann\FormelACT\Formelact.vbs E:\ACT\FormelACT_Makros\Kontakt_Land.txt
Schöne Grüße aus Viernheim
Ingrid Weigoldt
Andrea Oberhagemann

Beitrag von Andrea Oberhagemann »

Hallo

vielen Dank ! Jetzt habe ich ein neues Problem. Wenn ich zwei Felder multiplizieren will bekomme ich folgende Fehlermeldung (bei Kommazahlen).
Fehlernummer 1002
Syntaxfehler

Was kann ich tun?
Antworten