General SQL question

I have seen the following in some sql, but not sure of the difference.
select abc, NULL from xyz where .....
select abc, to_char(NULL) from xyz where ....
my question is there a difference between NULL and TO_CHAR(NULL) ?
Thanks.

BluShadow wrote:
Looks like someone was trying to cast the null to a varchar2 datatype so that SQL knew the datatype of the column. In that case they should have used the CAST function...
Blu:
Just out of curiosity, any particular reason for the preference for cast instead of to_datatype(null)? I often use that construct, particularly in union type queries. The cast is sematically meaningless in a union query since the column will get the size of the largest column in the query.
SQL> set null null
SQL> select *
  2  from (select 1 id, null c1, to_char(null) c2, cast(null as varchar2(10)) c3 from dual
  3        union all
  4        select 2, 'Hello there', 'Hello there', 'Hello there' from dual);
        ID C1          C2          C3
         1 null        null        null
         2 Hello there Hello there Hello there
SQL> create view v as
  2  select *
  3  from (select 1 id, null c1, to_char(null) c2, cast(null as varchar2(10)) c3 from dual
  4        union all
  5        select 2, 'Hello there', 'Hello there', 'Hello there' from dual);
View created.
SQL> desc v;
Name               Null?    Type
ID                          NUMBER
C1                          VARCHAR2(11)
C2                          VARCHAR2(11)
C3                          VARCHAR2(11)About the only place where I would use an explicit cast is if I was "hiding" the content of a column in a view, but needed to maintain the same structure as the table.
John

Similar Messages

  • PS General SQL Routines: Missing or invalid version of SQL library libpsora

    Hi Everyone,
    Need your assistance. Perhaps someone of you encountered this already. I have completed setting up everything until the application server part. If I try to boot the application server I get the error below. I have tried several solution published in Oracle Support and these did not resolve the issue.
    Appserv log
    PSADMIN.15894 (0) [10/01/10 16:17:21](0) Begin boot attempt on domain hc91dmo
    PSAPPSRV.15941 (0) [10/01/10 16:17:50](0) PeopleTools Release 8.50 (Linux) starting. Tuxedo server is APPSRV(99)/1
    PSAPPSRV.15941 (0) [10/01/10 16:17:51](0) Cache Directory being used: /applications/psoft/hc91/appserv/hc91dmo/CACHE/PSAPPSRV_1/
    PSAPPSRV.15941 (0) [10/01/10 16:17:51](1) GenMessageBox(200, 0, M): PS General SQL Routines: Missing or invalid version of SQL library libpsora (200,0)
    PSAPPSRV.15941 (0) [10/01/10 16:17:51](1) GenMessageBox(0, 0, M): Database Signon: Could not sign on to database HC91DMO with user PS.
    PSAPPSRV.15941 (0) [10/01/10 16:17:51](0) Server failed to start
    PSADMIN.15894 (0) [10/01/10 16:17:58](0) End boot attempt on domain hc91dmo
    Tuxedo log
    161730.TESTLAB-03!BBL.15902.2248875168.0: 10-01-2010: client high water (0), total client (0)5900.2137364080.-2: TMADMIN_CAT:1330: INFO: Command: boot -A
    161728.TESTLAB-03!tmboot.15901.2219435552.-2: 10-01-2010: Tuxedo Version 10.3.0.0, 64-bit
    161728.TESTLAB-03!tmboot.15901.2219435552.-2: CMDTUX_CAT:1851: INFO: TM_BOOTTIMEOUT is set to 120 seconds
    161728.TESTLAB-03!tmboot.15901.2219435552.-2: CMDTUX_CAT:1855: INFO: TM_BOOTPRESUMEDFAIL option is selected
    161730.TESTLAB-03!BBL.15902.2248875168.0: 10-01-2010: Tuxedo Version 10.3.0.0, 64-bit, Patch Level (none)
    161730.TESTLAB-03!BBL.15902.2248875168.0: LIBTUX_CAT:262: INFO: Standard main starting
    161733.TESTLAB-03!tmboot.15905.1855951168.-2: 10-01-2010: Tuxedo Version 10.3.0.0, 64-bit
    161733.TESTLAB-03!tmboot.15905.1855951168.-2: CMDTUX_CAT:1851: INFO: TM_BOOTTIMEOUT is set to 120 seconds
    161733.TESTLAB-03!tmboot.15905.1855951168.-2: CMDTUX_CAT:1855: INFO: TM_BOOTPRESUMEDFAIL option is selected
    161735.TESTLAB-03!PSWATCHSRV.15906.1160363616.-2: 10-01-2010: Tuxedo Version 10.3.0.0, 64-bit
    161735.TESTLAB-03!PSWATCHSRV.15906.1160363616.-2: LIBTUX_CAT:262: INFO: Standard main starting
    161750.TESTLAB-03!PSAPPSRV.15941.4117513168.0: 10-01-2010: Tuxedo Version 10.3.0.0, 64-bit
    161750.TESTLAB-03!PSAPPSRV.15941.4117513168.0: LIBTUX_CAT:262: INFO: Standard main starting
    161751.TESTLAB-03!PSAPPSRV.15941.4117513168.0: LIBTUX_CAT:250: ERROR: tpsvrinit() failed
    161751.TESTLAB-03!tmboot.15905.1855951168.-2: tmboot: CMDTUX_CAT:827: ERROR: Fatal error encountered; initiating user error handler
    161755.TESTLAB-03!BBL.15902.2248875168.0: CMDTUX_CAT:26: INFO: The BBL is exiting system
    161758.TESTLAB-03!PSADMIN.15894: End boot attempt on domain hc91dmo
    stderr.log
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    Here is my environment configuration.
    CentOS 5.4 64 bit
    PeopleTools 8.50
    HCM 9.1 MultiLanguage
    WebLogic 11g R1
    Tuxedo 11g R3
    VmWare Server 2
    Oracle 11g
    Thanks ....

    It's Oracle 11.2.0.1.0. Yes, I can login to database via SQL PLus.
    [oracle@TESTLAB-03 ~]$ sqlplus /nolog
    SQL*Plus: Release 11.2.0.1.0 Production on Fri Oct 1 17:56:13 2010
    Copyright (c) 1982, 2009, Oracle. All rights reserved.
    SQL> conn people/peop1e
    Connected.
    Here what in my .bash_profile
    # .bash_profile
    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    # User specific environment and startup programs
    PATH=$PATH:$HOME/bin
    export PATH
    export ORACLE_HOME=/applications/oracle/product/11.2.0
    export TUXDIR=/applications/mdlware/tuxedo10gR3
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$TUXDIR/lib
    export PATH=$PATH:$ORACLE_HOME/bin:$TUXDIR/bin:$ORACLE_HOME/lib
    export PS_HOME=/applications/psoft/hc91
    export PS_CFG_HOME=$PS_HOME
    . $PS_HOME/psconfig.sh
    cd $PS_HOME

  • PS General SQL Routines: Missing or invalid version of SQL library libpsor

    Hi,
    I am facing the above error while booting up the Appserver. Could someone help me on these please.
    below are the softwares used:
    Oracle Linux5.4 64bit
    peopletools:8.51
    Application HCM:9.1
    weblogic wls_1034
    Tuxedo 10g3
    Stderr shows:
    dlopen in libpscompat failed for 'libpsora.so': libclntsh.so.10.1: cannot open shared object file: No such file or directory
    Appserv_log
    GenMessageBox(200, 0, M): PS General SQL Routines: Missing or invalid version of SQL library libpsora (200,0)
    PSAPPSRV.9875 (0) [12/11/12 15:37:28](1) GenMessageBox(0, 0, M): Database Signon: Could not sign on to database HCMDMO with user PS.
    Thanks in advance

    It's Oracle 11.2.0.1.0. Yes, I can login to database via SQL PLus.
    [oracle@TESTLAB-03 ~]$ sqlplus /nolog
    SQL*Plus: Release 11.2.0.1.0 Production on Fri Oct 1 17:56:13 2010
    Copyright (c) 1982, 2009, Oracle. All rights reserved.
    SQL> conn people/peop1e
    Connected.
    Here what in my .bash_profile
    # .bash_profile
    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    # User specific environment and startup programs
    PATH=$PATH:$HOME/bin
    export PATH
    export ORACLE_HOME=/applications/oracle/product/11.2.0
    export TUXDIR=/applications/mdlware/tuxedo10gR3
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$TUXDIR/lib
    export PATH=$PATH:$ORACLE_HOME/bin:$TUXDIR/bin:$ORACLE_HOME/lib
    export PS_HOME=/applications/psoft/hc91
    export PS_CFG_HOME=$PS_HOME
    . $PS_HOME/psconfig.sh
    cd $PS_HOME

  • PS General SQL Routine -- Missing or invalid version of SQL library PSORA (

    I installed PeopleTool8.5 in Windows7 ultimate(64bit version) . while i am tring to login first time in to datamover to populate the data to peopsoft. I am getting the following error message.
    Installed: Oracle 11g (64 bit), PeopleTools 8.5
    PS General SQL Routine -- Missing or invalid version of SQL library PSORA (200,0).
    Any idea to solve this issue.
    Thanks
    Ayyanar
    Edited by: P.P Ayyanar on Mar 13, 2010 12:56 PM

    P.P Ayyanar wrote:
    Please , we need to delete the existing row in dbowner table or any other solution.It seems you ran more than once this script. As I already said to you above, you MUST use a 32bit Oracle client against your 64bit Oracle database from a Windows workstation, are you ?
    Furthermore, Oracle db and Peoplesoft are not certified on Windows 7...
    Lastly, or you remove that line from the script, or you delete that row (all rows) from that table, or you re-create database from scratch (I mean drop and recreate) because running this script more than once is never good, especially regarding the DMS import.
    Nicolas.

  • SQL Question Bank and Answers for Practise

    Dear Readers:
    Does any one have any recommendation on SQL question bank and answers where I could practice my SQL.
    I have developed some basic knowledge of SQL thanks to the MS community, but I am looking for some additional Questions or textbook  recommendations which has questions and answers to queries for practice.
    Best Wishes,
    SQL75

    Hi,
    Refer below post.
    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/446b2247-5124-49c1-90c9-b7fea0aa4f83/sql-dba-books?forum=sqlgetstarted
    Please mark solved if I've answered your question, vote for it as helpful to help other users find a solution quicker
    Praveen Dsa | MCITP - Database Administrator 2008 |
    My Blog | My Page

  • Sql question : TRUNCATE vs Delete

    hi
    this is sql question, i don't know where i should post it, so here it is.
    i just want to know the best usage of each. both commands delete records in a table, one deletes all, and the other can do the same plus option to delete specified records. if i just want to purge the table. which one is better and why? thanks

    this is crucial to my design, i need to be able to
    rollback if one of the process in the transaction
    failed, the whole transaction should rollback. if
    truncate does not give me this capability, then i have
    to consider Delete.From the Oracle manual (sans the pretty formatting):
    TRUNCATE
    Caution: You cannot roll back a TRUNCATE statement.
    Purpose
    Use the TRUNCATE statement to remove all rows from a table or cluster. By default,
    Oracle also deallocates all space used by the removed rows except that specified by
    the MINEXTENTS storage parameter and sets the NEXT storage parameter to the size
    of the last extent removed from the segment by the truncation process.
    Removing rows with the TRUNCATE statement can be more efficient than dropping
    and re-creating a table. Dropping and re-creating a table invalidates the table?s
    dependent objects, requires you to regrant object privileges on the table, and
    requires you to re-create the table?s indexes, integrity constraints, and triggers and
    respecify its storage parameters. Truncating has none of these effects.
    See Also:
    DELETE on page 16-55 and DROP TABLE on page 17-6 for
    information on other ways to drop table data from the database
    DROP CLUSTER on page 16-67 for information on dropping
    cluster tables
    Prerequisites
    To truncate a table or cluster, the table or cluster must be in your schema or you
    must have DROP ANY TABLE system privilege.

  • Crystal 8.5 - General SQL Error

    I am using Crystal 8.5.  I'm writing a report with 4 tables.  If they are all equal joins, it works fine.  When I change the join between the first two tables to left outer join (which is what I need), I get the errors:  General SQL Errorr, Error detected by database DLL.  I found some documentation on this problem at Crystal Decisions.  It tells me to download ODBCregs.zip from their downloads.  It is no longer listed there.  Does anyone know where I can find it or how to resolve this problem.
    Thanks.

    Use the link below and navigate to the end of page:
    http://adc.exactsoftware.com/docs/DocView.aspx?DocumentID=%7B2ed0c56b-25cd-4b9e-ae9b-bfaa35d24d4e%7D
    Functions are the same for each version of CR. Just extrapolate to the new versions registry structure

  • Urgent SQL question : how to flip vertical row values to horizontal ?

    Hello, Oracle people !
    I have an urgent SQL question : (simple for you)
    using SELECT statement, how to convert vertical row values to horizontal ?
    For example :
    (Given result-set)
    MANAGER COLUMN1 COLUMN2 COLUMN3
    K. Smith ......1
    K. Smith ...............1
    K. Smith ........................1
    (Needed result-set)
    MANAGER COLUMN1 COLUMN2 COLUMN3
    K. Smith ......1 .......1 .......1
    I know you can, just don't remeber how and can't find exactly answer I'm looking for. Probably using some analytic SQL function (CAST OVER, PARTITION BY, etc.)
    Please Help !!!
    Thanx !
    Steve.

    scott@ORA92> column vice_president format a30
    scott@ORA92> SELECT f.VICE_PRESIDENT, A.DAYS_5, B.DAYS_10, C.DAYS_20, D.DAYS_30, E.DAYS_40
      2  FROM   (select t2.*,
      3                row_number () over
      4                  (partition by vice_president
      5                   order by days_5, days_10, days_20, days_30, days_40) rn
      6            from   t2) f,
      7           (SELECT T2.*,
      8                row_number () over (partition by vice_president order by days_5) RN
      9            FROM   T2 WHERE DAYS_5 IS NOT NULL) A,
    10           (SELECT T2.*,
    11                row_number () over (partition by vice_president order by days_10) RN
    12            FROM   T2 WHERE DAYS_10 IS NOT NULL) B,
    13           (SELECT T2.*,
    14                row_number () over (partition by vice_president order by days_20) RN
    15            FROM   T2 WHERE DAYS_20 IS NOT NULL) C,
    16           (SELECT T2.*,
    17                row_number () over (partition by vice_president order by days_30) RN
    18            FROM   T2 WHERE DAYS_30 IS NOT NULL) D,
    19           (SELECT T2.*,
    20                row_number () over (partition by vice_president order by days_40) RN
    21            FROM   T2 WHERE DAYS_40 IS NOT NULL) E
    22  WHERE  f.VICE_PRESIDENT = A.VICE_PRESIDENT (+)
    23  AND    f.VICE_PRESIDENT = B.VICE_PRESIDENT (+)
    24  AND    f.VICE_PRESIDENT = C.VICE_PRESIDENT (+)
    25  AND    f.VICE_PRESIDENT = D.VICE_PRESIDENT (+)
    26  AND    f.VICE_PRESIDENT = E.VICE_PRESIDENT (+)
    27  AND    f.RN = A.RN (+)
    28  AND    f.RN = B.RN (+)
    29  AND    f.RN = C.RN (+)
    30  AND    f.RN = D.RN (+)
    31  AND    f.RN = E.RN (+)
    32  and    (a.days_5 is not null
    33            or b.days_10 is not null
    34            or c.days_20 is not null
    35            or d.days_30 is not null
    36            or e.days_40 is not null)
    37  /
    VICE_PRESIDENT                     DAYS_5    DAYS_10    DAYS_20    DAYS_30    DAYS_40
    Fedele Mark                                                          35473      35209
    Fedele Mark                                                          35479      35258
    Schultz Christine                              35700
    South John                                                                      35253
    Stack Kevin                                    35701      35604      35402      35115
    Stack Kevin                                    35705      35635      35415      35156
    Stack Kevin                                    35706      35642      35472      35295
    Stack Kevin                                    35707      35666      35477
    Stack Kevin                                               35667      35480
    Stack Kevin                                               35686
    Unknown                             35817      35698      35596      35363      35006
    Unknown                                        35702      35597      35365      35149
    Unknown                                        35724      35599      35370      35155
    Unknown                                                   35600      35413      35344
    Unknown                                                   35601      35451      35345
    Unknown                                                   35602      35467
    Unknown                                                   35603      35468
    Unknown                                                   35607      35475
    Unknown                                                   35643      35508
    Unknown                                                   35644
    Unknown                                                   35669
    Unknown                                                   35684
    Walmsley Brian                                 35725      35598
    23 rows selected.

  • General dreamwevaer question

    hello dreamweavers.
    im a newbie going to use dreamweaver from next week and beyond,so id like to ask the following:
    should i design the website in photoshop and then import it into dreamwevaer,in order to code it?
    is dreamwevaer flexible in design point of view,or is it mostly getting finished designs such as headers,footers,flash banners,
    and then building up the site where things so and such.
    thank you.

    Hello Nancy.
    seems like an informative website,i can see it is easy to understand the
    basics.
    Στις 23 Μαρτίου 2012 4:29 π.μ., ο χρήστης Nancy O. <[email protected]>έγραψε:
       Re: general dreamwevaer question  created by Nancy O.<http://forums.adobe.com/people/Nancy+O.>in
    Dreamweaver - View the full discussion<http://forums.adobe.com/message/4283588#4283588

  • SQL question- on how to handle groups of records at a time.

    Hi,
    I have a sql that looks like the following:
    insert into INVALID_DATES_TMP
    (id, gid, created, t_rowid, updated)
    select id, gid, created, rowid, updated
    from TABLE1
    where fix_invalid_date_pkg.is_date_invalid('TABLE1', 'CREATED', ROWID) = 'Y';
    COMMIT;
    What the above sql does is selects all rows from TABLE1 where the CREATED column
    has invalid dates and inserts them into invalid_dates_tmp table. So we can process/fix
    those invalid dates from the temp table. Problem is our DBA said Table1 can have
    millions of rows so the above sql can be very database intensive. So, I need to
    figure out another way that may handle chunks of rows at a time from table1.
    Any ideas are appreciated!
    ThankYou,
    Radhika.

    Hallo,
    in general INSERT AS SELECT is the fastest method to insert into the table.
    Probably you can use direct load ? (Hint APPEND).
    Other options (INSERT IN LOOP or BULK + FORALL) are slower.
    I think, this method is optimal.
    Another question is, the function itself. It is not clear, whether it searches the invalid dates optimal. I suppose strong, that function uses dynamic SQL.
    Why ? It is better to search static . Or you use this function for many other columns ? Could you post the function also ?
    Regards
    Dmytro

  • Basic PL/SQL Question about running context

    We are trying to create some generalized tools with PL/SQL procedures that would be used by a number of different Oracle Users/Schema. The idea was to store them in an administrative schema (call it ADMIN), create public synonyms for them, and grant execute to public. Then we could run them from the user schema (call it USER) to do the work.
    It was my assumption, that while the procedures were stored in ADMIN, when they were run by USER they would run in the USER context. EG, a table (call it MYTABLE) that was referenced in the procedure without a schema reference (SELECT * FROM MYTABLE) would expect to find MYTABLE in the context of the schema which called the procedure. In other words, call the procedure from USER, I expected the procedure to look for MYTABLE in USER. However, we are getting errors that indicate that even though the procedure is called from USER, it is looking for the table in ADMIN (the procedures creation context), no in USER (the running context).
    QUESTIONS: How is PL/SQL supposed to operate in this situation? Are there any options/parameters that can be set so the procedure will use the runtime context for table lookup, or do we have to write dynamic SQL which will fully qualify the table with the owner schema?
    Thanks for your help
    John Conroy

    Hy,
    from the manual:
    The AUTHID clause is allowed only in the header of a stand-alone subprogram, a
    package spec, or an object type spec. The header syntax is
    -- stand-alone function
    CREATE [OR REPLACE] FUNCTION [schema_name.]function_name
    [(parameter_list)] RETURN datatype
    [AUTHID {CURRENT_USER | DEFINER}] {IS | AS}
    -- stand-alone procedure
    CREATE [OR REPLACE] PROCEDURE [schema_name.]procedure_name
    [(parameter_list)]
    [AUTHID {CURRENT_USER | DEFINER}] {IS | AS}
    -- package spec
    CREATE [OR REPLACE] PACKAGE [schema_name.]package_name
    [AUTHID {CURRENT_USER | DEFINER}] {IS | AS}
    -- object type spec
    CREATE [OR REPLACE] TYPE [schema_name.]object_type_name
    [AUTHID {CURRENT_USER | DEFINER}] {IS | AS} OBJECT
    where DEFINER is the default option. In a package or object type, the AUTHID
    clause applies to all routines.
    Note: Most supplied PL/SQL packages (such as DBMS_LOB, DBMS_PIPE, DBMS_
    ROWID, DBMS_SQL, and UTL_REF) are invoker-rights packages.

  • External Authentication general-type questions

    Greetings all,
    I was recently shown how to get Oracle to allow Windows NT Authentication the way SQL 2005 etc. can. I was able to get it working. It's actually simple, you just have to have this line in your SQLNET.ORA file:
    SQLNET.AUTHENTICATION_SERVICES = (NTS)
    and make sure a couple initialization parameters are set (OS_AUTHENT_PREFIX to NULL and REMOTE_OS_AUTHENT to TRUE - the first can't be changed once the database is built!).
    My first question is does Oracle support external authentications to operating systems other than NT, i.e. SUN, UNIX, LDAP etc? And is it a similar architecture?
    Secondly, the only ways I've ever connected to Oracle are 1) through SQL*Plus, 2) Using OLE DB from Windows and 3) Using ODBC.
    Is external authentication supported when logging in any way other than through OLE DB? If so, how?
    Appreciating any general information!
    Thanks
    Joe

    1. The name of the product is SQL Server not SQL. SQL is a language.
    2. Oracle supports all major forms of internal and external authentication. The ones you listed and many more. The docs are at http://tahiti.oracle.com
    3. External authentication is support across the board. But you've got to be working with a database holding nothing more important than your mother's cookie recipes to think that operating system authentication in a Windows environment is secure: It is not.
    Your first responsibility, unless you are just playing games at home or in school, is to secure the data and that means an environment more secure than the one you've chosen.

  • SQL Questions (New to Cisco)

    Hello. I work for Clarian Health in Indianapolis and am trying to learn as much as possible about the SQL databases, both AWDB and HDS so that I can handle the reporting for our Revenue Cycle Customer Service.
    I am currently working my way through the Database Schema Handbook for Cisco Unified ICM /Contact Center Enterprise & Hosted. I’m also reviewing the explanation pages that are available for the reports on WebView. During my reviews, I have noticed a few things that confuse me.
    My questions are:
    1. Why do a majority of the tables on our SQL Server start with “t_”?
    2. Why do some of the tables have data on the AWDB server but not on the HDS server, and vice versa? (Examples: t_Agent and t_Agent_Team and t_Agent_Team_Member and t_Person are blank on the HDS database but not blank on the AWDB database; but the t_Agent_Logout is blank on the AWDB database and not blank on the HDS database)
    3. When data is moved to the HDS server every 30 minutes, is it also removed from the corresponding AWDB table?
    4. In review of the agent26: Agent Consolidated Daily Report syntax info located on the WebView, 1 of the calculations uses the LoggedOnTimeToHalf from the Agent_Half_Hour table while the remaining calculations uses the same field from the Agent_Skill_Group_Half_Hour table. Can you please tell me why this is? Why would all of the percent calculations not use the data from the same table? (The % of time Agent paused and/or put a task on hold uses the Agent_Half_Hour Table. All other % calculations uses the same field from the Agent_Skill_Group_Half_Hour Table.)
    5. Also in reviewing the agent26: Agent Consolidated Daily Report syntax info, I noticed that it contains the Skill_Group table, the Agent_Half_Hour table and the Media_Routing_Domain table. Both the Skill Group table and the Agen_Half_Hour table contain links to the Media_Routing_Domain table. Which relationship/join is actually utilized for this report?
    6. Why doesn't the LoggedOnTimeToHalf field on both the Agent_Half_Hour table and the Agent_Skill_Group_Half_Hour table have the same value in them?
    7. On the agent_26: Agent Consolidated Daily Report syntax explanation page, the Agent State Times: Log on Duration says that it is derived using the Agent_Half_Hour.LoggedOnTimeToHalf field, but when i convert this field to HH:MM:SS, it does not match the actual WebView report. But, when I use the Agent_Skill_Group_Half_Hour.LoggedOnTimeToHalfHour, it does match. Which one is correct?
    8. On the agent_26: Agent Consolidated Daily Report, why does the Completed Tasks: Transfer Out contain both the TransferredOutCallsToHalf and the NetTransferredOutCallsToHalf fields? What's the difference between the two? What Transfer out data writes to each field?
    Thank you.
    Angie Combest
    Clarian Health
    [email protected]

    You need to be careful when looking at the three databases - Logger, AW, HDS - which use the same schema. But many of what appear to be tables in the AW are really views into the t_ tables in the HDS - the data is not there in the AW DB. You are right to look at the schema - but check with SQL Enterprise to understand a bit more.
    In essence, the AW DB is for configuration data and real-time data. The HDS is for historical data. You can query the AW DB for (say) Call_Type_Half_Hour data and join with the Call_Type table to resolve the call type ID into its name - but the data is really in the HDS through the view.
    The DB design is quite complex and sophisticated - many things are not obvious.
    Keep up your research.
    Regards,
    Geoff

  • A few general agent questions

    We've been asked some general questions by our agents that I have been unable to find answers for, (although 4 and 5 are likely working as designed). We are running IPCC Express 7.0(1)SR05_Build504 and these are all phone agents. We do not run the agent desktop client. Any assistance in answering these questions would be greatly appreciated.
    1. TransfertoVM softkey "grayed out" while on a CSQ call. Can it be enabled?
    2. While logged in to CSQ, is there a way to start dialing prior to
    lifting the receiver?
    3. Is it possible to handle more than one CSQ call at a time, e.g. put a call on hold and answer
    another CSQ call.
    4. Upon selecting Agent Login (single-button login), can the agent automatically be put into Ready?
    5. Upon Logout, can the phone be returned to the main screen, rather than getting the manual agent login screen?
    Again, any assistance in answering these questions would be greatly appreciated.
    Thanks,
    Roger

    Hi
    1) Isn't that an IPMA softkey? Never tried it, but whilst it's not in the 'unsupported' list, I wouldn't expect using any IPMA features in conjunction with CAD would get you good results. If it doesn't cause you stuck/ghost calls, I would expect erroneous reports...
    2) Being logged into a CSQ doesn't affect the way the phone works.
    - You can dial the number then either lift the handset or hit dial (for speakerphone)
    - You can press speakerphone or headset then dial
    I guess what you are referring to is if you are using the IP Phone Agent in conjunction with a headset? If you are, then the IPPA usually obscures the 'new call' and 'end call' softkeys that you might use if you leave the headset button lit. I guess this isn't the case, as you refer to lifting the receiver? Unless you have motorized lifters.. If that's what you have, you can try getting users to either :
    - Manage their onhook/offhook state using the headset key as if it was the speakerphone key (i.e. press it to hang up or pickup)
    - Use a headset/phone combination that supports HHC
    - Switch to CAD, or CAD-BE if you can't install PC software for some reason.
    3) No. The system is designed specifically so that this should never happen.
    4) No.
    5) Again, no... you can't customize the BIPPA service... If you use CAD or CAD-BE this wouldn't be an issue.
    Regards
    Aaron
    Please rate helpful posts...

  • Parent - child table issue wrt to count - SQL question

    I have a scenario:
    There are 2 tables (parent and child). lets say, case summary table and task level dimension table.
    for every case id in case summary table, there would be multiple tasks in task level dim table with a flag indicator set to 1 for all tasks.
    but while counting the number of cases active with flag indicator 1 (ofcourse when joining case summary table with task dimension table), for a case id only 1 instance of task needs to be accounted (even though it has more than one task , for counting active cases, the flag ind corresponding to a task in a case if set to 1 , then the case is considered active)..but while joining and taking count of case ids with flag indicator as 1, you get the count of every task row of a case which is incorrect logically. how to discard the rest of child records of a case in child table (task dimension table)?
    I am not sure how to achieve this in sql query
    Kindly help!
    Case summary table
    case id, busininess_unit, agent_name
    1001, admin, Ram
    1002, Finance, Sam
    task table
    case id, task_id,task_name, flag_indicator
    1001, 1, 'New', 1
    1001,2, 'Open',1
    1001,3,'In progress',1
    1002, 4, 'New', 1
    (In fact task_id is not a big deal... even you can assume task id doesn't exist..only task name ... )
    now my question... if my query should get the current active cases (ind=1); as per above it should essentially give 2... but my query gives me 4..you know the reason why.. but how do i get the correct count?
    Thanks!

    may be you need just this:
    select count(distinct case_id) from task
    where indicator = 1;
    If this is not what you are looking for, please elaborate and tell us the expected output and rest of the details as mentioned in FAQ Re: 2. How do I ask a question on the forums?:

Maybe you are looking for