Counting Hold Times

Hi:
I am trying to recreate something in Oracle I had done in SQL Server with a complex SQL statement (See end of post). I have two tables. First table ("CallDetail") holds one record per phone call. Two of the fields in this table that I want to update--they are "HoldTime" and "Times_On_Hold". So if a call was put on hold once for 30 seconds, and a second time for 15, HoldTime would be 45 seconds and "Times_On_Hold" would be 2.
The second table ("HoldEvents") contains hold events, with these fields:
Reporting_ID
CallEventName
CallEventTime
So the relationship is one to many here between the first table and the second on the Reporting_ID.
The 3 types of events in the "HoldEvents" table are "Call on Hold" "Hold Ended" and "Call Ended" . The trick is that there are anomolies:
1. Call On Hold and "Hold Ended" could appear at same time, both for previous hold, and for next hold. So records in this order may appear (there are no existing ordinals to take care of this):
Reporting_ID CallEventName CallEventTime
1 Call On Hold 9:45:43
1 Call On Hold 9:46:52
1 Hold Ended 9:46:52
1 Hold Ended 9:53:01
1 Call Ended 9:56:01
2. There may be no final Hold Ended event--a call might be put on hold and and just ended without a corresponding "Hold Ended": So might see these events for Reporting_ID 2:
Reporting_ID CallEventName CallEventTime
2 Call On Hold 9:46:43
2 Hold Ended 9:53:01
2 Call On Hold 9:55:43
1 Call Ended 10:01:01
When I try to run the code below in Toad, I get a missing right parentheses error, not sure why, they all seem to be there, but most likely it is just because of differences between T and PL/SQL. (The DATEDIFF function I have created in Oracle to mimic the way it was done before). Any ideas how to either modify the code below to get this to work, or a new approach altogether?
The code I used in TSQL:
UPDATE CallDetail SET Hold_Time = b.ElapsedSeconds, Times_On_Hold = b.TimesOnHold
FROM CallDetail a INNER JOIN
(SELECT Starting.Reporting_ID,
SUM(datediff('SS', Starting.HoldEventTime,
Ending.HoldEventTime)) as ElapsedSeconds,
count(*) as TimesOnHold
FROM (SELECT Reporting_ID,
HoldEventTime,
(select count(*) from HoldEvents as B
where B.CallEventName = 'Call On Hold'
and A.Reporting_ID = B.Reporting_ID
and A.HoldEventTime >= B.HoldEventTime) as Ordinal
FROM HoldEvents as A
WHERE CallEventName = 'Call On Hold') as Starting
JOIN (SELECT Reporting_ID,
HoldEventTime,
(select count(*) from HoldEvents as D
where D.CallEventName IN ('Hold Ended',
'Call Ended')
and C.Reporting_ID = D.Reporting_ID
and C.HoldEventTime >= D.HoldEventTime) as Ordinal
FROM HoldEvents as C
WHERE CallEventName IN ('Hold Ended', 'Call Ended')) as
Ending
ON Starting.Reporting_ID = Ending.Reporting_ID
AND Starting.Ordinal = Ending.Ordinal
GROUP BY Starting.Reporting_ID) b
ON a.Reporting_ID = b.Reporting_ID
Thanks!
Kayda

Your not the first and certinly not the last to have this issue. It seems that the hard dri've used on the Zen Micro and other players, such as my own, has this problem. The hard dri've is a Seagate ST dri've. And by the looks of it only the 5gb model is affected as I have yet to read of someone with a 4gb or a 6gb Micro with this problem.
If this problem is really that big, we should get a petition started to recall the players with these dri'ves, or offer FREE service to get the faulty dri've replaced. This would be similar to the headphone jack issue which affected soo many players that Creative is now offering free service to repair it.
This hard dri've problem is not just a few dozen or so, it is a BIG percentage of players given the number of posts over the course of almost a year with the Zen Micro and the Dell Pocket DJ which is built by Creative and uses the same 5GB Seagate ST dri've.
But I must say. This problem does NOT affect all 5GB Zen Micro's or Dell Pocket DJ's. Its only some. And it does not matter if your player has been under extreme care or been mishandled. Personally my player has been mishandled and suffers my daily commute to school which involves alot of shaking and other things which has been suggested time and time again not to do with a hard dri've player, such as running, working out, even mowing the lawn. And it has not skipped a beat ever, still works flawlessly just like the first day I got it. So I know first hand it doesn't affect all 5GB Seagate ST dri'ves.
I would love to hear a response from Creative regarding this issue. Or Seagate even.Message Edited by DM on -08-2005 0:5 AM

Similar Messages

  • How do I read ModBus counter holding registers in Lookout 5

    We are using Lookout v5 with Zetron M1700 and M1716 RTUs. The M1700 is Modbus1 and the M1716 is Modbus2.
    We need to be able to count the number of times a digital input is turned on and off over a period of time.
    We are using digital input #9 on the M1716 RTU. According to the Zetron literature, the counter holding registers for digital input #9 are 42091-42093 for the value and 42094-42096 for the period.
    I tried to calculate the the value stored in the registers by using this formula which was suggested by Zetron in an expression:
    (((Modbus2.42093*10000)+Modbus2.42092)*10000)+Modbus2.42091
    However, this always returns zero.
    I read through your example on reading the BCD registers and doing calculation
    s on them but it hasn't helped me with my problem.
    Is there some command I need to use or a special type of an object I need to use to read the counter holding registers?
    I know we are communicating with Modbus2 properly because I can see when the digital input is on or off.
    Any help is greatly appreciated.

    Hi,
    Is it possible to share or point us to the Zetron literature explaining this calculation?
    If you just read the registers 42091-42093 individually from Modbus2, what do you get?
    Alternatively, you can maybe count the digital line directly in Lookout. For this, you would create a Counter object and specify the digital input as the "Count=" input. Not sure if this is a feasible option for you.
    Again, if you can share the Zetron documentation, I can take a look at it to see why it may not be working.
    Regards,
    Khalid

  • Hold Tim calculation in Agent & Agent Skill Group Reports

    Please can someone confirm if I have this correct AHT is = to HandledCallsTime/CallsHandled   HandledCallsTime = HandledCallTalkTime + HoldTime + Wrap.
    If this is correct can someone confirm what constitues HoldTime - is InCallsOnHoldTime part of the overall hold time?
    I have created and AVG Hold time  HoldTime/CallsHandled, AVG Talk Time HandledCallsTalkTime/CallsHandled & AVG Wrap WrapTime/CallsHandled and all of those added together = AHT
    If I run the report and look at AHoldT that is showing a calculation of InCallsOnHoldTime/InCallsOnHold
    My query is this, I take a call, I speak to the customer for 60 secs, put them on hold whilst I make an outgoing call 30 secs, then come back to them and speak to them for a further 30secs and do 10 secs of Wrap...
    Where does my Hold time with regards to me making a call sit..
    As when I run this report I get the following output attached.
    Arcadia wants to ensure that the Hold time that is happening whilst I am making another call is counted within the AHT... AS far as I can see it isn't!

    Hi,
    no, you did not. Just 'reporting' and 'cuic'.
    Er... it's not really the SQL query, but anyway, I if I substitute AgentSkillGroup for Agent_Skill_Group_Interval, then the explanation for the HoldTime is this - kind of fuzzy, though:
    >>
    >> Number of seconds where all calls to the agent are on hold during the
    >> reporting interval. HoldTime is counted only while the agent is doing no
    >> other call-related activity. HoldTime is included in the calculation of
    >> LoggedOnTime.
    >>
    I am not absolutely sure about this, but logically, the IncomingCallsOnHoldTime is a subset of HoldTime. I mean, HoldTime being the global HoldTime (including all types of calls), and IncomingCallsOnHoldTime is related only to inbound ACD calls. This is actually in the schema doc, but again, it's kind of fuzzy:
    >>
    >> IncomingCallsOnHoldTime
    >> Total number of seconds that inbound ACD calls calls that an agent
    >> associated with this skill group placed on hold that ended during the
    >> reporting interval. The value is counted when the after-call work time
    >> associated with the call (if any) is completed, and the database is updated
    >> every reporting.
    >>
    Well, this does not explain that, does it.
    This way: do you have access to the HDS database? Would be interesting to take a look at the Agent_State_Trace table for a particular agent and then do the calculations. I know, it's kind of complicated, but let's just wait and see if someone else comes up with a better explanation.
    G.

  • Philadelphia Area Hold Time

    I called AT&T at 11:00 am and held for over 40 minutes then was disconnected. I have now been on hold for 38:40 and am still on hold. I don't care what the problem is, this is ridiculous.
    Faith

    (You know what the answer is going to be...)
    Don't do that!
    When you use a clock generated by combinatorial logic, you create a large skew between the source clock and the generated clock. This skew is a killer for hold time violations.
    Inherently, there isn't a significant difference between V6 and the 7 series, but the delay of the BUFG grows as the size of the device, so a smaller device will have less hold time to fix than a larger device - the tools may be able to deal with it on a smaller device, but not on a larger one. You are also very much at the mercy of the place and route.
    Furthermore, there is nothing that guarantees that the output of the LUT is glitch free - and a glitch on the clock line will mess up your logic.
    The correct way to do this is to use a BUFGCE. Instead of generating the clock from the LUT, generate an enable instead (it generally needs to be generated one source clock earlier), and then use that as the CE for a BUFGCE. The BUFG (source clock) and BUFGCE (generated clock) are in parallel (see attached diagram) and hence have very little skew, so no hold time issues.
    In your case (as opposed to the diagram) the CE generation is not a simple counter, but that is fine - any logic that can meet a one clock static timing path to the CE input is acceptable.
    Avrum

  • How can i count the times one TAG occurred in a XMLTYPE?

    hi all
    is there method i can use to count the times one specified TAG occurred in a XMLTYPE?
    i just konw the method getClobVal,existNode,extract,...
    but none seems can help this
    anyone can help me?

    i see
    i think i know how to use Xpath func
    but when i try the following statement on sqlplus( Release 9.2.0.4.0),it says :"the XPATH is not supportted"
    declare
    l_xml xmltype;
    num number;
    begin
    select XML_BODY into l_xml from KD_SHIMEN_SEISEI w where FILE='SMNDATA';
    --get value OK!
    num := xmltype.extract(l_xml,'/Tag1[1]/Tag2/text()').getNumberVal();
    --sum or count ,failed,Xpath not support?
    num := xmltype.extract(l_xml,'sum(/Tag1/Tag2/text())').getNumberVal();
                   DBMS_OUTPUT.PUT_LINE(num);
    end;
    can u explain this?

  • So I have been using my iPad for a few months now and I recently noticed that the time display next to the playlist name in the music  app that is supposed to display the total song count and time of a playlist is way off. I have a 25 song playlist that 2

    So I have been using my iPad for a few months now and I recently noticed that the time display next to the playlist name in the music  app that is supposed to display the total song count and time of a playlist is way off. I have a 25 song playlist that is around 2 hours on my computer appears as 2003 minutes on my iPad.  It's a smart playlist limited to 25 songs if that makes any difference. Is this happening to anyone else? Any help would be appreciated!

    Greetings,
    First make an iCal backup, File > Export > Archive.
    Remove the following to the trash and restart your computer:
    Home > Library > Caches
    Home > Library > Calendars > Calendar Cache, Cache, Cache 1, 2, 3, etc. (Do not remove Sync Cache or Theme Cache)
    Home > Library > Preferences > com.apple.ical (There may be more than one of these. Remove them all.)
    __NOTE: Removing these files will remove any shared (CalDAV) calendars you may have access to. You will have to re-add those calendars to iCal > Preferences > Accounts.
    Once the computer is back up and running open iCal and test.
    Hope that helps.

  • UCCX - Can I get a report on hold time for one call

    Hello, is it possible to report on the hold time for one particular call? We have a customer claiming they were on hold far longer than the agent claims. We are running UCCX 8.5, with CUCM 8.6.
    Thanks,
    Josh

    Hi, it's probably the Agent Detail report you are looking for.
    Also, take a look at the reporting guide for UCCX 8.5.
    G.

  • Unable to measure pulse time, using Counter pulse time 1samp.vi

    Hi
    I am using pci6624 board to measure pulse time . I have selected counter 0 to measure  pulse time & connect the signal to gate0+ & gate0-.
    When i used Counter pulse time 1samp.vi to read the pulse time , i am not able to read the value and i am getting following error msg . If i used Counter DBL 1samp.vi  i am getting out put.
    Please help me
    Attachments:
    pulse_time_measurment.vi ‏11 KB
    Counter_errors.JPG ‏44 KB

    Hi,
    You can try changing the mode to counter -> single sample -> DBL in Daqmx read function
    You can also try this example 'Meas Pulse Width-Buffered-Cont.vi' or related examples from NI Example Finder.
    Cheers,
    Sahil Gupta
    NI India

  • Count down Timer in jsp

    We are developing an Online Examination System. We are using jsp and servlets.
    We need a count down timer which will start as user starts the test. When user refreshes the page during test, timer should continue counting and must not reset the counter. At the end of the test it will submit automatically.
    Does jsp provide built in facility to manage timer?

    Does jsp provide built in facility to manage timer?There is no build in facility to manage timer, but all you have to do is track it at the server end.
    ie - not in javascript.
    Store a timestamp for the user for when they started the test. Either in session, or in a database.
    Then whenever they refresh their page, you look at the current time, the time they started the test and display the appropriate value.
    By all means you can have a javascript countdown on the page, but the authorative time should be on the server.

  • Can Cisco Historical Reports Report Average Hold Time for Incoming Calls?

    Is the a way that Cisco Historical can report on the Average Hold Time for Incoming Calls? User is trying to figure out if there is a hold time prior to the agent picking up the call.
    I am running CRS Historical Reports Versions 5.0 (2.5).

    Hi,
    You can check the link belowCisco Unified Contact Center Express 5.0 Historical Reporting Administrator and Developer Guide:
    http://www.cisco.com/en/US/docs/voice_ip_comm/cust_contact/contact_center/crs/express_5_0/programming/hr_admin_devp/crs501hd.pdf
    this document includes all the details regarding the reports and its cutomization.
    Regards,
    Trad

  • I need a count "UP" timer for a client.

    I have kind of a strange request, but it's from a strange client so it's not surprising.
    The client needs a counting UP timer, not a count DOWN timer, so please don't refer me to that widget, I already used it.
    The original countdown timer has expired, so now she wants a timer that will count the days, hours, minutes & seconds SINCE that timer expired.
    Website splash page: http://www.theapocalypse.ca so you can see what I mean.
    Is it possible to "crack" the existing widget and just "reverse" it, or is there something I can build in edge animate that will work?
    I know, WEIRD, but hey, a paycheque is a paycheque.
    Thanks guys!

    You may try this : http://www.tickcounter.com/countup/widget
    Thanks,
    Sanjit

  • Maximum work process hold time exeeded

    HI ALL,
    My user is running one Report painter report. He is getting the values in the report with out any issue. But after trying to filter the data, he is getting the error as "Maximum work process hold time exeeded".
    And some times he is getting the same error while exporting the data to the local file from the report.
    Is it because of SAP GUI version and patch level?
    Kindly let us know.
    Thanks & Regards
    Shankar

    HI Pradeep,
    Thanks for your reponse.
    Could you please give me some details of that technical step, where i have to set the time , where can i get that parameter ID etc...
    Thanks In advance.
    shankar

  • HANA DB table holds time zones

    Dear Experts,
    I want to know if there any table to host time zones in HANA. we know TTZZ holds all time zones in ABAP.
    I find HANA built-in functions utctolocal and localtoutc can verifies the time zone codes specified, that means there must exist one or more table to hold time zones data in HANA, right?
    Regards,
    Guoliang Zhou

    Aaaaand there we go... another SAP colleague who just doesn't seem to be able to search the SAP internal communities before posting questions... :-(
    Your answer would have been available in https://community.wdf.sap.corp/message/475074#475074 but hey, why not reposting, he?
    Even better: the answer was already available also here on SCN!
    Just read my blog post You got the time? ...
    really: please do apply the "search first" rule!
    - Lars

  • How to create a count up timer in flash ...

    How do you make a count up timer in flash? I have the custom counter I made in photoshop and I can get it to count up, but not with the dynamic text field I've created in flash, what do I need to do.......
    simpl code:
    var startT:Number = 1;
    var endT:Number =8000000;
    var tf:TextField = this.createTextField('counter', this.getNextHighestDepth(), 10, 10, 300, 22);
    onEnterFrame = function ()
        if (startT >=endT)
            delete onEnterFrame;
            tf.text = String(endT);
        else
            tf.text = String(startT);
            startT += 1;

    You are using AS2 code, so you should start by setting your file up to publish for AS2 code.  If you do that then the code you show will work.  If you have further issues with it you should posyt in the AS2 forum.

  • Hold times for Customer Service

         I have called THREE times trying to get a hold of someone to transfer my a line to my new account. The first time i was on hold for over 30 minutes, the second over 20 minutes, and the third was over 30 minutes again. So because of the lack of answering your customer service lines I have wasted almost an hour and a half of my day waiting to talk to a human. This is (removed) and I am seriously considering going to another company for my service when my contracts are up!
    >>Edited to comply with the Verizon Wireless Terms of Service<<
    Message was edited by: Verizon Moderator

    If anyone hates hold times it's me
    With that said, you are not the only one on hold and the reps are busy with other customers.
    The reps are not trained to get you off the phone ASAP but rather actually try and fix your issue (It's a 50/50 shot if they do but they try)
    That means it is a 10 minute call per customer so eventually calls will get backed up.
    Sunday they staff low, Monday is always the most backed up. Throughout the week the hold times will reduce unless you call on lunch hour or something.
    This is usually the case with most communications companies, a friend of mine works for T-Mobile and that's how he said it is.
    Good Luck

Maybe you are looking for

  • All songs in iTunes cloud not visible in iTunes

    I'm having an issue and something has obviously been corrupted.  On one of my PCs, none of the songs which are in the cloud are visible in my iTunes any longer.  iTunes says that everything has been updated and is working properly but I have no acces

  • Transfer of Production Version

    Hi Gurus, i am trying to transfer the Production Versions of a Material to an other System via IDoc. I am using BD10 for transfering.. The relevant Segment E1MKALM in MATMAS05 is filled with all data from the source. But in the Target Systen tge Prod

  • Macbook won't recognize ipad

    I just got my macbook from apple, replace my hard drive, now my macbook will not recognize my Ipad

  • XML and Stored Procedures

    Hi, Is it possible to pass information to and from an Oracle stored procedure using a XML page? If so could you please point me to examples and/or white pages? Thanks! Tess

  • Object queue error

    While connecting to the object queue within the Sun Java System RFID Massage Queue the following error is output: Unable to connect to the object store 'EpcisObjectStore'/ com.sun.messaging.jmq.admi.objstore.GeneralNamingException: A general naming e