Hilfe für ein Script im CRM 2006

Ich habe ein kleines Script, aber der Extrakt wird nicht erstellt. Offenbar übernimmt das Script die Eingabe des Inputfeldes „VP“ nicht in den Extraktbefehlt. Hat jemand eine Ahnung woran das liegt??

hmm, ein bissle Code dazu würde es vielleicht einfacher machen zu helfen :wink:

Sorry, hier ist der Code:

Option Explicit
Dim oProject, oActiveView, oCurrentRecordSet, bFilter, VP, X
Set oProject = cRM.CurrentProject
Set oActiveView = oProject.ActiveViews.ActiveView
Set oCurrentRecordSet = oActiveView.CurrentRecordSet
VP = InputBox („Eingabe der gesuchten Nummer“,„Input Required“)
bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper X")

If bFilter = True Then

Msgbox „Es befinden sich " & oActiveView.FilterRecCount & " Datensätze im Filter.“
Else
Msgbox „Es konnte kein Filter erstellt werden!“
End If

Set oCurrentRecordSet = Nothing
Set oActiveView = Nothing
Set oProject = Nothing

Hallo Herr Bossert,

der Fehler liegt glaube ich hier:
bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper X")

x ist in dem Fall ein String - und wenn ich es richtig interpretiere wollen Sie einen den Wert aus der Inputbox haben.

Dem zu Folge sollten Sie es wie folgt umbasteln:
bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper" &VP)

Viele Grüße
Dr. Frank Wietzel (cosmolink e.K.)

Ich hatte auch versucht
bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper" &VP)
aber leider auch mit dem resultat der meldung „es konnte kein Filter erstellt werden“. Ich habe auch nach der Inpubox geprüft, ob der Eingabewert vorhanden ist mit
WScript.echo VP
und der eingegebene Wert war korrekt, aber ein Filter wurde nicht erstellt. Ich habe keine Ahnung, woran das liegt. Hier nochmal das gesamte Script:

Option Explicit
Dim oProject, oActiveView, oCurrentRecordSet, bFilter, VP
Set oProject = cRM.CurrentProject
Set oActiveView = oProject.ActiveViews.ActiveView
Set oCurrentRecordSet = oActiveView.CurrentRecordSet
VP = InputBox („Eingabe der gesuchten Nummer“,„Input Required“)
WScript.Echo VP

bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper" & VP)

If bFilter = True Then

Msgbox „Es befinden sich " & oActiveView.FilterRecCount & " Datensätze im Filter.“
Else
Msgbox „Es konnte kein Filter erstellt werden!“
End If

Set oCurrentRecordSet = Nothing
Set oActiveView = Nothing
Set oProject = Nothing

Hallo Herr Bossert

bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper" & VP)

macht auch keinen Sinn - Sie wollen doch eine Zahl filtern wozu dann upper?

Bei einem String sollte auch der String in Anführungzeichen gesetzt werden
bFilter = oCurrentRecordSet.SetFilter(„upper(“„VPNR“") = upper""" & VP &"")

wenn VPNR ein nummerischer Datentyp ist dann brauchen Sie kein upper

bFilter = oCurrentRecordSet.SetFilter("VPNR = " & VP)

Diese Codeschnipsel einbau und testen - wenn Fehlermeldung kommt dann hier posten, welche Meldung kommt.

Viele Grüße
Dr. Frank Wietzel (cosmolink e.K.)

Vielen Dank Herr Wietzel,

hat funktioniert.

Viele Grüsse

Peter Bossert