Jump to content

Datenbankwert in Variable


Telcom_Admin

Recommended Posts

Hallo liebes Forum

 

Habe da wieder einmal einen Hänger...

 

Mein Wunsch ist es, anhand einer Telefonnumer, in der Datenbank zu prüfen, ob dieser Kunde vorhanden ist. Wenn ja möchte ich gerne den Datensatz "Name" in eine Variable schreiben. Mein Ziel ist, dass ich später im Script diese Variable verwenden kann, um den Kundennamen im SwyxIt! anzuzeigen.

 

Hier mal noch ein paar Zeilen Code, welcher ich einfach nicht weiter komme...

 

'SetName Name des Anrufers, wenn in der DB vorhanden, in die Variable sName setzen

Function SetName

    PBXScript.OutputTrace "-----------> SetName"
    PBXScript.OutputTrace "sNumber = " & sNumber

    Dim bReturn1
        
    ' open recordset1
    Dim sSQL1
    Dim rs1    
    Dim sName As String
    sSQL1 = "select Name from KEK1 where TELG = '" & sNumber & "'"
    PBXScript.OutputTrace "sSQL1 = " & sSQL1
    
    Set rs1 = CreateObject("ADODB.Recordset")
    rs1.Open sSQL1, db, adOpenDynamic, adLockOptimistic, adCmdText
    
    if not rs1.EOF then

        PBXScript.OutputTrace "At least one recordsetfrom database received"
        PBXScript.OutputTrace "rs1(""NAME"") = " & rs1("NAME")

        sName = rs1!NAME
    else
        PBXScript.OutputTrace "No recordsetfrom database received"
    end if
    
    rs1.Close
    Set rs1 = Nothing

    SetName = bReturn1
    
    PBXScript.OutputTrace "sName = " & sName
    PBXScript.OutputTrace "<----------- SetName"
    
End Function

 

Vielen lieben Dank für Anregungen und Feedbacks :)

 

Grüsse

aus der Schweiz

Link to comment
Share on other sites


Hi Telcom_Admin,

 

was genau meinst du denn? Wo du den Code einsetzt? In der Regel in den Startblock und dann in einem VB Block vor der Rufzustellung setname aufrufen. Oder du nimmst Visualcontacts das macht sowas automatisch. ;-) SQL Verbindung zur Datenbank und dieses zeigt dann den Namen an. Ist leider nicht umsonst.

 

Grüße

 

Jochen

 

Link to comment
Share on other sites


Hi @Jochen

 

Das Script ist im Startblock hinterlegt, im VB Block rufe ich es so auf (in der Hoffnung das es stimmt) :D

 

' TODO: Geben Sie hier Ihren Skript-Code ein

UseExit = 0 ' Bitte verwenden Sie die Variable UseExit um die Block-Ausgänge 0..9 zu verwenden

IpPbx.CallingName =  SetName & IpPbx.CallingNumber

 

Leider aber ja nicht ;) sonst würde es ja gehen.

 

Das mit Visualcontacts weiss ich :)

 

Möchte es gerne trotzdem gerne hinkriegen :)

 

Grüsse

Link to comment
Share on other sites


Hi @Jochen

 

Line 111049: 24 15:22:09.432 0043e8 Inf2 SrvPBXCtl  06CE53E8 000002a3 SScriptFsm::ActionOnStartScript         ()
    Line 111050: 24 15:22:09.432 0043e8 Info SrvScrAPI  07074C00 000002a3 SScriptLoader::LoadScript               (callrouting.vbs, U:64 Test)
    Line 111051: 24 15:22:09.458 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 () Done loading (Success) callrouting.vbs', scope User
    Line 111052: 24 15:22:09.459 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()     Done loading (Success) Templates_V4.3.vbs', scope SystemDefault
    Line 111053: 24 15:22:09.459 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) rulePreProcessing.vbs', scope Global
    Line 111054: 24 15:22:09.460 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) rulePostProcessing.vbs', scope SystemDefault
    Line 111055: 24 15:22:09.461 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) Functions.vbs', scope SystemDefault
    Line 111056: 24 15:22:09.462 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) actionStandardVoicemail.vbs', scope SystemDefault
    Line 111057: 24 15:22:09.463 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) actionStandardRemoteInquiry.vbs', scope SystemDefault
    Line 111058: 24 15:22:09.463 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()             Done loading (Success) actionRedirection.vbs', scope SystemDefault
    Line 111059: 24 15:22:09.465 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()         Done loading (Success) Resources.vbs', scope SystemDefault
    Line 111060: 24 15:22:09.486 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LdDiskVerify             ()      valid GSE signature found
    Line 111061: 24 15:22:09.487 0043e8 Info SrvScCache 0881AF58 000002a3 SScriptFCache::LoadFile                 ()     Done loading (Success) ruleCheckKunde.vbs', scope User
    Line 111062: 24 15:22:09.488 0043e8 Info SrvScrAPI  070FA6B0 000002a3 SScriptHost::Initialize                 () loaded 'callrouting.vbs (User, Test)' with 627801 bytes in 0.055s
    Line 111063: 24 15:22:09.504 00638c *Err SrvScrAPI  057652A0 000002a3 SPBXScriptSite::OnScriptError           ()
    Line 111073: 24 15:22:09.505 00638c *Err SrvScrAPI  0832FA50 000002a3 SH::ScriptEngineThread::Main            () failed, errorUnknown error 0x80020101
    Line 111074: 24 15:22:09.505 00638c Info SrvPBXCtl  0D8A3C90 000002a3 SScrServer::OnScriptFinished            ()
    Line 111075: 24 15:22:09.505 00638c Inf2 SrvPBXCtl  0D8A3C90 000002a3 SScrServer::EventScriptFinished         ()
    Line 111076: 24 15:22:09.505 0043e8 *Err SrvScrAPI  070FA6B0 000002a3 SScriptHost::Initialize                 (Test) failed, error Unknown error 0x80020101
    Line 111077: 24 15:22:09.506 0043e8 *Err SrvPBXCtl  0D8A3C90 000002a3 SScrServer::InitScript                  () script host init failed with 1 for U:64 Test
    Line 111078: 24 15:22:09.506 0043e8 Info SrvScrAPI  070FA6B0 000002a3 SScriptHost::Delete                     () script running, delay deletion, confCnt= 0
    Line 111079: 24 15:22:09.506 00638c Info SrvScrAPI  0832FA50 000002a3 SH::ScriptEngineThread::Main            () stopped script engine
    Line 111080: 24 15:22:09.506 0043e8 *Err SrvPBXCtl  06CE53E8 000002a3 SScriptFsm::ActionOnStartScript         () Starting script failed
    Line 111081: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl  0D8A3C90 000002a3 SPBXCallHub::SetDisconnectReason        (CallRoutingFailed, ext cause 0, U:0, T:0, '','',Unknown) stored
    Line 111082: 24 15:22:09.506 0043e8 Inf2 SrvPBXCtl  0D8A3C90 000002a3 SPBXCallHub::DiscAndRemoveAllCalls      (CallRoutingFailed, ext cause 0)
    Line 111083: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl  0D8A3C90 000002a3 SPBXCallHub::DiscAndRemoveAllCalls      () disconnecting call 06C822C8
    Line 111084: 24 15:22:09.506 0043e8 Inf3 SrvPBXCtl  06C822C8 000002a3 SPBXCall::EventDisconnect               (cause: CallRoutingFailed, ext cause: 0, discon. type: Normal)
    Line 111085: 24 15:22:09.506 0043e8 Inf2 SrvPBXCtl  0D8A3C90 000002a3 SPBXCallHub::RemoveCall                 (06C822C8)

 

Leider nicht sooo viel...

Link to comment
Share on other sites


Er kann das Script nicht ausführen. Das Spricht in der Regel für einen Fehler in der Syntax. Wir packen vor die Function immer noch ein Public bin mir nicht sicher ob du das brauchst. Ich würde mir hier jetzt Stück für Stück vorarbeiten:

 

Erstmal nur die eine "leere" Funktion erstellen mit einer Logsausgabe. Diese dann aus einem VB Block aufrufen.

Danach dort dann den Namen fest auf Test setzen, im VB Block jetzt zusätzlich noch den Name dann auf die Rückgabe ändern.

Jetzt das SQL hinzufügen.

 

 

Link to comment
Share on other sites


  • 2 weeks later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.