AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge Funktionen aus Crystal Reports im Report Builder anwenden
Thema durchsuchen
Ansicht
Themen-Optionen

Funktionen aus Crystal Reports im Report Builder anwenden

Ein Thema von Metallicwar · begonnen am 25. Mär 2011 · letzter Beitrag vom 13. Apr 2011
Antwort Antwort
Seite 2 von 3     12 3      
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#11

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 15:35
Hi, also hab's in die Newsgroup gepostet und recht zügig eine Antwort bekommen.

Zitat:
Hi David,

You are correct, RAP is not going to be able to resolve the TRoundToEXRangeExtended type. Perhaps try using a simpler type (String or Integer) and convert to the TRoundToEXRangeExtended type inside the Execute routine.
versteh aber leider nicht genau wie ich das anstellen soll.

Delphi-Quellcode:
class function TmyRoundToFunction.GetSignature: String;
begin
  Result := 'function RoundTo(const AValue: Extended; const ADigit: TRoundToEXRangeExtended): Extended;';
end;
wo soll ich den Datentyp ändern und wie kann ich bsp. von Int nach Extended umwandeln?

Geändert von Metallicwar (11. Apr 2011 um 15:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 15:59
Hi,

so sollte es gehen:
Delphi-Quellcode:
Uses
  SysUtils, raFunc, ppRTTI, Math;

type
  TmyRoundToFunction = class(TraSystemFunction)
  public
    class function Category: string; override;
    procedure ExecuteFunction(AParams: TraParamList); override;
    class function GetSignature: string; override;
  end;

implementation

class function TmyRoundToFunction.Category: string;
begin
  Result := 'Crystal Reports';
end;

procedure TmyRoundToFunction.ExecuteFunction(AParams: TraParamList);
var
  AValue: Extended;
  AResult: Extended;
  ATempDigit: Integer;
  ADigit: TRoundToEXRangeExtended; // [-20 .. 20]
begin
  GetParamValue(0, AValue);
  GetParamValue(1, ATempDigit);
  try
    ADigit := ATempDigit; // prüfen auf TRoundToEXRangeExtended
    AResult := RoundTo(AValue, ADigit);
    SetParamValue(2, AResult);
  except
    raise Exception.Create('ADigit ist kein TRoundToEXRangeExtended');
  end;
end;

class function TmyRoundToFunction.GetSignature: string;
begin
  Result := 'function RoundTo(const AValue: Extended; const ADigit: Integer): Extended';
end;

initialization
  raRegisterFunction('RoundTo', TmyRoundToFunction);

finalization
  raUnRegisterFunction('RoundTo');

end.
Frank
Frank Reim

Geändert von dataspider (11. Apr 2011 um 16:10 Uhr)
  Mit Zitat antworten Zitat
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#13

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:12
Hallo Frank,
danke für den Code, aber ich erhalte nachwievor die selbe Fehlermeldung.
Also Laut Aussage von Digital Metaphors einen einfacheren Typ verwenden (String oder Integer) und in der Execute Methode in den TRoundToEXRangeExtended umwandeln, aber wie?!? Steh auf dem Schlauch ...
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:16
aber ich erhalte nachwievor die selbe Fehlermeldung.
Das kann nicht sein, da ich den Typ in der Signatur auf Integer geändert habe.

Frank
Frank Reim
  Mit Zitat antworten Zitat
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#15

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:21
Zitat:
vor einer Minute
Zitat von Metallicwar:
aber ich erhalte nachwievor die selbe Fehlermeldung.
Das kann nicht sein, da ich den Typ in der Signatur auf Integer geändert habe.

Frank
Versteh ich nicht, hast du's mal bei dir getestet, habe deinen Code 1 zu 1 übernommen und bekommen trotzdem eine Fehlermeldung: 'Cannot compile signature for Crystal Reports function: RoundTo'

Wäre super, wenn wir das Problem heute noch lösen könnten.
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#16

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:26
Versteh ich nicht, hast du's mal bei dir getestet, habe deinen Code 1 zu 1 übernommen und bekommen trotzdem eine Fehlermeldung:
Ne, sorry - hab es jetzt unter D2010 getestet mit dem selben Fehler...sollte zu finden sein...

Frank
Frank Reim
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:33
Sorry,

bei der Signatur fehlte das Semikolon:

  Result := 'function RoundTo(AValue: Extended; ADigit: Integer): Extended;';
[Edit]
Seh gerade, dass ich das Const vor den Paramtern entfert habe. Kannst du wieder rein nehmen, spielt IMHO keine Rolle...[/EDIT]


Frank
Frank Reim

Geändert von dataspider (11. Apr 2011 um 16:45 Uhr)
  Mit Zitat antworten Zitat
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#18

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 16:50
Vielen Dank Frank.

Letzte Frage bis dahin:
Delphi-Quellcode:
begin
  Value := RoundTo(Trunc(dbPipelineAktuellerMonat['Tagesbrutto'] div 60), 2)
          + ':'
          + Roundto((-1) * (dbPipelineAktuellerMonat['Tagesbrutto'] mod 60),2);
Fehler: Inkompatible Typen..

Erwartet ja Extended und das Datenfeld ist ein Integer... IntTo???
  Mit Zitat antworten Zitat
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#19

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 17:16
ehm, ich kriegs nicht hin -.-
Kann mir bitte nochmal jmd bei der Typumwandlung helfen?
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: Funktionen aus Crystal Reports im Report Builder anwenden

  Alt 11. Apr 2011, 17:33
Ich nehme an, gleich gibt es was auf die Mütze!
Denn Pushen ist hier nicht gerade beliebt.

Und ich klink mich hier jetzt auch erst mal aus.

Du kommst so nicht weiter. Das nächste Problem ist mod und div und so weiter.

Und es geht wohl nur um die Formatierung eines Wertes (wurde ja schon erwähnt).

Vergiss einfach, die Funktionen 1 zu 1 nachbilden zu wollen.
Schau die den Wert an und die Ausgabe und mach eine Formatfunktion, die nur den Wert bekommt und den String zurückgibt.

Frank
Frank Reim

Geändert von dataspider (11. Apr 2011 um 17:49 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz