VB6 CALC-Aggregation bei ADO-Form bei Rückgabe Fehlende allgemeine Fehler im Datenbericht

8

Ich verwende den ado-Shape-Befehl in meinem Datenbericht, es funktioniert aber wenn meine Aggregatfunktion CALC (agrProfit / agrExtended * 100) null oder 0/0 * 100 ist, wird ein allgemeiner Fehler angezeigt und der Datenreport wird nicht angezeigt. Bitte Hilfe.

%Vor%     
FatalError 22.02.2016, 09:20
quelle

3 Antworten

2

Es sieht also so aus, als ob Sie die ADO Data Shaping-Funktionen hier, und mit CALC(expression) können Sie VBA-Funktionen verwenden, die aufgelistet sind hier in dem Ausdruck. @ C-Pound Gurus Vorschlag verursacht einen Fehler, da NULLIF () keine VBA-Funktion ist, aber der gesamte Ausdruck kann folgendermaßen umgeschrieben werden:

%Vor%

Lassen Sie mich wissen, ob dies Ihr Problem behebt.

    
Cahit 02.03.2016, 00:02
quelle
1

Wenn Ihr SQL Server 2005 oder neuer ist, können Sie NULLIF in Verbindung mit ISNULL :

Ersetzen Sie agrProfit/agrExtended durch

%Vor%

Dies wird Null zurückgeben, wenn agrExtended = 0 ist, anstatt einen Fehler durch Division durch Null zu verursachen.

    
C-Pound Guru 22.02.2016 14:23
quelle
0

Es scheint, dass Sie MS Access oder etwas verwenden, das mit MS Access kommuniziert. Wenn dies der Fall ist, können Sie Switch verwenden:

Ersetzen:

CALC(agrProfit / agrExtended * 100)

Mit:

%Vor%

Die Idee besteht darin, NULL durch 0 zu ersetzen, Divide durch 0 durch 0 zu ersetzen oder das tatsächliche Verhältnis zurückzugeben.

    
Steven Hibble 01.03.2016 19:09
quelle

Tags und Links